From: Daniel Vetter <daniel@ffwll.ch>
To: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: Daniel Vetter <daniel.vetter@intel.com>,
Tomi Valkeinen <tomi.valkeinen@ti.com>,
dri-devel@lists.freedesktop.org
Subject: Re: [PATCH v4 02/14] drm: Implement the drm_format_*() helpers as drm_format_info() wrappers
Date: Wed, 21 Sep 2016 09:34:13 +0200 [thread overview]
Message-ID: <20160921073413.GD4714@dvetter-linux.ger.corp.intel.com> (raw)
In-Reply-To: <1473345868-25453-3-git-send-email-laurent.pinchart@ideasonboard.com>
On Thu, Sep 08, 2016 at 05:44:16PM +0300, Laurent Pinchart wrote:
> Turn the drm_format_*() helpers into wrappers around the drm_format_info
> lookup function to centralize all format information in a single place.
>
> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> ---
> drivers/gpu/drm/drm_fourcc.c | 186 +++++++++----------------------------------
> 1 file changed, 37 insertions(+), 149 deletions(-)
>
> diff --git a/drivers/gpu/drm/drm_fourcc.c b/drivers/gpu/drm/drm_fourcc.c
> index 6b91bd8a510d..bf91c5044d84 100644
> --- a/drivers/gpu/drm/drm_fourcc.c
> +++ b/drivers/gpu/drm/drm_fourcc.c
> @@ -198,69 +198,22 @@ EXPORT_SYMBOL(drm_format_info);
> void drm_fb_get_bpp_depth(uint32_t format, unsigned int *depth,
> int *bpp)
> {
> - char *format_name;
> -
> - switch (format) {
> - case DRM_FORMAT_C8:
> - case DRM_FORMAT_RGB332:
> - case DRM_FORMAT_BGR233:
> - *depth = 8;
> - *bpp = 8;
> - break;
> - case DRM_FORMAT_XRGB1555:
> - case DRM_FORMAT_XBGR1555:
> - case DRM_FORMAT_RGBX5551:
> - case DRM_FORMAT_BGRX5551:
> - case DRM_FORMAT_ARGB1555:
> - case DRM_FORMAT_ABGR1555:
> - case DRM_FORMAT_RGBA5551:
> - case DRM_FORMAT_BGRA5551:
> - *depth = 15;
> - *bpp = 16;
> - break;
> - case DRM_FORMAT_RGB565:
> - case DRM_FORMAT_BGR565:
> - *depth = 16;
> - *bpp = 16;
> - break;
> - case DRM_FORMAT_RGB888:
> - case DRM_FORMAT_BGR888:
> - *depth = 24;
> - *bpp = 24;
> - break;
> - case DRM_FORMAT_XRGB8888:
> - case DRM_FORMAT_XBGR8888:
> - case DRM_FORMAT_RGBX8888:
> - case DRM_FORMAT_BGRX8888:
> - *depth = 24;
> - *bpp = 32;
> - break;
> - case DRM_FORMAT_XRGB2101010:
> - case DRM_FORMAT_XBGR2101010:
> - case DRM_FORMAT_RGBX1010102:
> - case DRM_FORMAT_BGRX1010102:
> - case DRM_FORMAT_ARGB2101010:
> - case DRM_FORMAT_ABGR2101010:
> - case DRM_FORMAT_RGBA1010102:
> - case DRM_FORMAT_BGRA1010102:
> - *depth = 30;
> - *bpp = 32;
> - break;
> - case DRM_FORMAT_ARGB8888:
> - case DRM_FORMAT_ABGR8888:
> - case DRM_FORMAT_RGBA8888:
> - case DRM_FORMAT_BGRA8888:
> - *depth = 32;
> - *bpp = 32;
> - break;
> - default:
> - format_name = drm_get_format_name(format);
> + const struct drm_format_info *info;
> +
> + info = drm_format_info(format);
> + if (!info || !info->depth) {
> + char *format_name = drm_get_format_name(format);
> +
> DRM_DEBUG_KMS("unsupported pixel format %s\n", format_name);
> kfree(format_name);
> +
> *depth = 0;
> *bpp = 0;
> - break;
> + return;
> }
> +
> + *depth = info->depth;
> + *bpp = info->cpp[0] << 3;
Bikeshed: This is a funny way to write * 8 ... Would be nice to fix imo.
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
next prev parent reply other threads:[~2016-09-21 7:34 UTC|newest]
Thread overview: 53+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-09-08 14:44 [PATCH v4 00/14] Centralize format information Laurent Pinchart
2016-09-08 14:44 ` [PATCH v4 01/14] drm: " Laurent Pinchart
2016-09-14 11:49 ` Tomi Valkeinen
2016-09-14 22:22 ` Laurent Pinchart
2016-09-15 6:22 ` Tomi Valkeinen
2016-09-15 16:12 ` Eric Engestrom
2016-09-15 23:30 ` Laurent Pinchart
2016-09-16 9:44 ` Tomi Valkeinen
2016-09-16 9:59 ` Laurent Pinchart
2016-09-18 10:17 ` [PATCH v4.1 " Laurent Pinchart
2016-09-21 7:23 ` Daniel Vetter
2016-09-21 11:21 ` Laurent Pinchart
2016-09-21 12:43 ` Daniel Vetter
2016-09-21 13:40 ` Eric Engestrom
2016-09-22 6:37 ` Daniel Vetter
2016-09-08 14:44 ` [PATCH v4 02/14] drm: Implement the drm_format_*() helpers as drm_format_info() wrappers Laurent Pinchart
2016-09-14 11:56 ` Tomi Valkeinen
2016-09-21 7:34 ` Daniel Vetter [this message]
2016-09-21 11:29 ` Laurent Pinchart
2016-09-08 14:44 ` [PATCH v4 03/14] drm: Use drm_format_info() in DRM core code Laurent Pinchart
2016-09-14 13:23 ` Tomi Valkeinen
2016-09-14 22:31 ` Laurent Pinchart
2016-09-21 7:26 ` Daniel Vetter
2016-09-08 14:44 ` [PATCH v4 04/14] drm: WARN when calling drm_format_info() for an unsupported format Laurent Pinchart
2016-09-15 9:33 ` Tomi Valkeinen
2016-09-08 14:44 ` [PATCH v4 05/14] drm: sti: Replace drm_fb_get_bpp_depth() with drm_format_plane_cpp() Laurent Pinchart
2016-09-09 12:08 ` Vincent ABRIOU
2016-09-08 14:44 ` [PATCH v4 06/14] drm: hdlcd: " Laurent Pinchart
2016-09-08 14:44 ` [PATCH v4 07/14] drm: tilcdc: " Laurent Pinchart
2016-09-15 9:36 ` Tomi Valkeinen
2016-09-15 9:49 ` Jyri Sarha
2016-09-15 21:40 ` [PATCH v4.1 " Laurent Pinchart
2016-09-08 14:44 ` [PATCH v4 08/14] drm: cirrus: " Laurent Pinchart
2016-09-21 7:36 ` Daniel Vetter
2016-09-08 14:44 ` [PATCH v4 09/14] drm: gma500: Replace drm_fb_get_bpp_depth() with drm_format_info() Laurent Pinchart
2016-09-21 7:35 ` Daniel Vetter
2016-09-08 14:44 ` [PATCH v4 10/14] drm: amdgpu: Replace drm_fb_get_bpp_depth() with drm_format_plane_cpp() Laurent Pinchart
2016-09-21 7:51 ` Daniel Vetter
2016-09-21 12:39 ` Laurent Pinchart
2016-09-21 12:46 ` Daniel Vetter
2016-09-21 13:59 ` Laurent Pinchart
2016-09-22 5:31 ` Daniel Vetter
2016-09-22 6:33 ` Laurent Pinchart
2016-09-08 14:44 ` [PATCH v4 11/14] drm: radeon: " Laurent Pinchart
2016-09-21 7:52 ` Daniel Vetter
2016-09-08 14:44 ` [PATCH v4 12/14] drm: vmwgfx: Replace drm_fb_get_bpp_depth() with drm_format_info() Laurent Pinchart
2016-09-21 7:31 ` Daniel Vetter
2016-09-23 12:40 ` Laurent Pinchart
2016-09-23 12:48 ` Daniel Vetter
2016-09-08 14:44 ` [PATCH v4 13/14] drm/arm: mali-dp: Replace drm_fb_get_bpp_depth() with drm_format_plane_cpp() Laurent Pinchart
2016-09-21 7:53 ` Daniel Vetter
2016-09-08 14:44 ` [PATCH v4 14/14] drm: Don't export the drm_fb_get_bpp_depth() function Laurent Pinchart
2016-09-15 9:41 ` Tomi Valkeinen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160921073413.GD4714@dvetter-linux.ger.corp.intel.com \
--to=daniel@ffwll.ch \
--cc=daniel.vetter@intel.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=laurent.pinchart@ideasonboard.com \
--cc=tomi.valkeinen@ti.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox