OSDN Git Service

drm: Don't export the drm_fb_get_bpp_depth() function
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Mon, 17 Oct 2016 22:41:21 +0000 (01:41 +0300)
committerArchit Taneja <architt@codeaurora.org>
Tue, 18 Oct 2016 09:54:08 +0000 (15:24 +0530)
The function is only used by the drm_helper_mode_fill_fb_struct() core
function to fill the drm_framebuffer bpp and depth fields, used by
drivers that haven't been converted to use pixel formats directly yet.
It should not be used by new drivers, so inline it in its only caller.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Signed-off-by: Archit Taneja <architt@codeaurora.org>
Link: http://patchwork.freedesktop.org/patch/msgid/1476744081-24485-14-git-send-email-laurent.pinchart@ideasonboard.com
drivers/gpu/drm/drm_fourcc.c
drivers/gpu/drm/drm_modeset_helper.c
include/drm/drm_fourcc.h

index 523ed91..cbb8b77 100644 (file)
@@ -203,37 +203,6 @@ const struct drm_format_info *drm_format_info(u32 format)
 EXPORT_SYMBOL(drm_format_info);
 
 /**
- * drm_fb_get_bpp_depth - get the bpp/depth values for format
- * @format: pixel format (DRM_FORMAT_*)
- * @depth: storage for the depth value
- * @bpp: storage for the bpp value
- *
- * This only supports RGB formats here for compat with code that doesn't use
- * pixel formats directly yet.
- */
-void drm_fb_get_bpp_depth(uint32_t format, unsigned int *depth,
-                         int *bpp)
-{
-       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;
-               return;
-       }
-
-       *depth = info->depth;
-       *bpp = info->cpp[0] * 8;
-}
-EXPORT_SYMBOL(drm_fb_get_bpp_depth);
-
-/**
  * drm_format_num_planes - get the number of planes for format
  * @format: pixel format (DRM_FORMAT_*)
  *
index 1d45738..2544dfe 100644 (file)
@@ -70,8 +70,23 @@ EXPORT_SYMBOL(drm_helper_move_panel_connectors_to_head);
 void drm_helper_mode_fill_fb_struct(struct drm_framebuffer *fb,
                                    const struct drm_mode_fb_cmd2 *mode_cmd)
 {
+       const struct drm_format_info *info;
        int i;
 
+       info = drm_format_info(mode_cmd->pixel_format);
+       if (!info || !info->depth) {
+               char *format_name = drm_get_format_name(mode_cmd->pixel_format);
+
+               DRM_DEBUG_KMS("non-RGB pixel format %s\n", format_name);
+               kfree(format_name);
+
+               fb->depth = 0;
+               fb->bits_per_pixel = 0;
+       } else {
+               fb->depth = info->depth;
+               fb->bits_per_pixel = info->cpp[0] * 8;
+       }
+
        fb->width = mode_cmd->width;
        fb->height = mode_cmd->height;
        for (i = 0; i < 4; i++) {
@@ -79,8 +94,6 @@ void drm_helper_mode_fill_fb_struct(struct drm_framebuffer *fb,
                fb->offsets[i] = mode_cmd->offsets[i];
                fb->modifier[i] = mode_cmd->modifier[i];
        }
-       drm_fb_get_bpp_depth(mode_cmd->pixel_format, &fb->depth,
-                                   &fb->bits_per_pixel);
        fb->pixel_format = mode_cmd->pixel_format;
        fb->flags = mode_cmd->flags;
 }
index f73f97a..dc0aafa 100644 (file)
@@ -48,7 +48,6 @@ struct drm_format_info {
 const struct drm_format_info *__drm_format_info(u32 format);
 const struct drm_format_info *drm_format_info(u32 format);
 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);
 int drm_format_horz_chroma_subsampling(uint32_t format);