drm: Don't export the drm_fb_get_bpp_depth() function

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
This commit is contained in:
Laurent Pinchart 2016-10-18 01:41:21 +03:00 committed by Archit Taneja
parent 7ccf281fb1
commit 488546fc4d
3 changed files with 15 additions and 34 deletions

View File

@ -202,37 +202,6 @@ const struct drm_format_info *drm_format_info(u32 format)
} }
EXPORT_SYMBOL(drm_format_info); 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 * drm_format_num_planes - get the number of planes for format
* @format: pixel format (DRM_FORMAT_*) * @format: pixel format (DRM_FORMAT_*)

View 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, void drm_helper_mode_fill_fb_struct(struct drm_framebuffer *fb,
const struct drm_mode_fb_cmd2 *mode_cmd) const struct drm_mode_fb_cmd2 *mode_cmd)
{ {
const struct drm_format_info *info;
int i; 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->width = mode_cmd->width;
fb->height = mode_cmd->height; fb->height = mode_cmd->height;
for (i = 0; i < 4; i++) { 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->offsets[i] = mode_cmd->offsets[i];
fb->modifier[i] = mode_cmd->modifier[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->pixel_format = mode_cmd->pixel_format;
fb->flags = mode_cmd->flags; fb->flags = mode_cmd->flags;
} }

View 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);
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); 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_num_planes(uint32_t format);
int drm_format_plane_cpp(uint32_t format, int plane); int drm_format_plane_cpp(uint32_t format, int plane);
int drm_format_horz_chroma_subsampling(uint32_t format); int drm_format_horz_chroma_subsampling(uint32_t format);