[PATCH 6/9] drm: move drm_mode_legacy_fb_format to drm_fourcc.c
Archit Taneja
architt at codeaurora.org
Thu Aug 25 12:25:32 UTC 2016
On 08/18/2016 02:26 AM, Daniel Vetter wrote:
> It's part of the drm fourcc handling code, mapping the old depth/bpp
> values to new fourcc codes.
Reviewed-by: Archit Taneja <architt at codeaurora.org>
>
> Cc: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
> Signed-off-by: Daniel Vetter <daniel.vetter at intel.com>
> ---
> drivers/gpu/drm/drm_crtc.c | 43 -------------------------------------------
> drivers/gpu/drm/drm_fourcc.c | 43 +++++++++++++++++++++++++++++++++++++++++++
> include/drm/drm_crtc.h | 2 --
> include/drm/drm_fourcc.h | 1 +
> 4 files changed, 44 insertions(+), 45 deletions(-)
>
> diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c
> index d7f68ec049d1..27b49ad0989b 100644
> --- a/drivers/gpu/drm/drm_crtc.c
> +++ b/drivers/gpu/drm/drm_crtc.c
> @@ -1666,49 +1666,6 @@ int drm_mode_cursor2_ioctl(struct drm_device *dev,
> return drm_mode_cursor_common(dev, req, file_priv);
> }
>
> -/**
> - * drm_mode_legacy_fb_format - compute drm fourcc code from legacy description
> - * @bpp: bits per pixels
> - * @depth: bit depth per pixel
> - *
> - * Computes a drm fourcc pixel format code for the given @bpp/@depth values.
> - * Useful in fbdev emulation code, since that deals in those values.
> - */
> -uint32_t drm_mode_legacy_fb_format(uint32_t bpp, uint32_t depth)
> -{
> - uint32_t fmt;
> -
> - switch (bpp) {
> - case 8:
> - fmt = DRM_FORMAT_C8;
> - break;
> - case 16:
> - if (depth == 15)
> - fmt = DRM_FORMAT_XRGB1555;
> - else
> - fmt = DRM_FORMAT_RGB565;
> - break;
> - case 24:
> - fmt = DRM_FORMAT_RGB888;
> - break;
> - case 32:
> - if (depth == 24)
> - fmt = DRM_FORMAT_XRGB8888;
> - else if (depth == 30)
> - fmt = DRM_FORMAT_XRGB2101010;
> - else
> - fmt = DRM_FORMAT_ARGB8888;
> - break;
> - default:
> - DRM_ERROR("bad bpp, assuming x8r8g8b8 pixel format\n");
> - fmt = DRM_FORMAT_XRGB8888;
> - break;
> - }
> -
> - return fmt;
> -}
> -EXPORT_SYMBOL(drm_mode_legacy_fb_format);
> -
> static bool drm_property_type_valid(struct drm_property *property)
> {
> if (property->flags & DRM_MODE_PROP_EXTENDED_TYPE)
> diff --git a/drivers/gpu/drm/drm_fourcc.c b/drivers/gpu/drm/drm_fourcc.c
> index c81546c15c93..29c56b4331e0 100644
> --- a/drivers/gpu/drm/drm_fourcc.c
> +++ b/drivers/gpu/drm/drm_fourcc.c
> @@ -36,6 +36,49 @@ static char printable_char(int c)
> }
>
> /**
> + * drm_mode_legacy_fb_format - compute drm fourcc code from legacy description
> + * @bpp: bits per pixels
> + * @depth: bit depth per pixel
> + *
> + * Computes a drm fourcc pixel format code for the given @bpp/@depth values.
> + * Useful in fbdev emulation code, since that deals in those values.
> + */
> +uint32_t drm_mode_legacy_fb_format(uint32_t bpp, uint32_t depth)
> +{
> + uint32_t fmt;
> +
> + switch (bpp) {
> + case 8:
> + fmt = DRM_FORMAT_C8;
> + break;
> + case 16:
> + if (depth == 15)
> + fmt = DRM_FORMAT_XRGB1555;
> + else
> + fmt = DRM_FORMAT_RGB565;
> + break;
> + case 24:
> + fmt = DRM_FORMAT_RGB888;
> + break;
> + case 32:
> + if (depth == 24)
> + fmt = DRM_FORMAT_XRGB8888;
> + else if (depth == 30)
> + fmt = DRM_FORMAT_XRGB2101010;
> + else
> + fmt = DRM_FORMAT_ARGB8888;
> + break;
> + default:
> + DRM_ERROR("bad bpp, assuming x8r8g8b8 pixel format\n");
> + fmt = DRM_FORMAT_XRGB8888;
> + break;
> + }
> +
> + return fmt;
> +}
> +EXPORT_SYMBOL(drm_mode_legacy_fb_format);
> +
> +/**
> * drm_get_format_name - return a string for drm fourcc format
> * @format: format to compute name of
> *
> diff --git a/include/drm/drm_crtc.h b/include/drm/drm_crtc.h
> index 1abcc182e92b..f5e51e5e9724 100644
> --- a/include/drm/drm_crtc.h
> +++ b/include/drm/drm_crtc.h
> @@ -2135,8 +2135,6 @@ extern int drm_mode_crtc_set_gamma_size(struct drm_crtc *crtc,
>
> extern int drm_mode_set_config_internal(struct drm_mode_set *set);
>
> -extern uint32_t drm_mode_legacy_fb_format(uint32_t bpp, uint32_t depth);
> -
> extern struct drm_tile_group *drm_mode_create_tile_group(struct drm_device *dev,
> char topology[8]);
> extern struct drm_tile_group *drm_mode_get_tile_group(struct drm_device *dev,
> diff --git a/include/drm/drm_fourcc.h b/include/drm/drm_fourcc.h
> index b106337de1bf..30c30fa87ee8 100644
> --- a/include/drm/drm_fourcc.h
> +++ b/include/drm/drm_fourcc.h
> @@ -25,6 +25,7 @@
> #include <linux/types.h>
> #include <uapi/drm/drm_fourcc.h>
>
> +uint32_t drm_mode_legacy_fb_format(uint32_t bpp, uint32_t depth);
> void drm_fb_get_bpp_depth(uint32_t format, unsigned int *depth, int *bpp);
> int drm_format_num_planes(uint32_t format);
> int drm_format_plane_cpp(uint32_t format, int plane);
>
--
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project
More information about the dri-devel
mailing list