drm/fb-helper: Replace bpp/depth parameter by color mode
authorThomas Zimmermann <tzimmermann@suse.de>
Fri, 6 Jan 2023 11:23:24 +0000 (12:23 +0100)
committerThomas Zimmermann <tzimmermann@suse.de>
Fri, 6 Jan 2023 13:21:56 +0000 (14:21 +0100)
commitd3533a8af48479a1af1a8fa7fcb0e5161398c94e
tree3d07356ec18def25a1d972bb89ff73df88f25edd
parent4c00ac500d0edd1a6730c4e8293834a694c1b304
drm/fb-helper: Replace bpp/depth parameter by color mode

Replace the combination of bpp and depth with a single color-mode
argument. Handle special cases in simpledrm and ofdrm. Hard-code
XRGB8888 as fallback format for cases where no given format works.

The color-mode argument accepts the same values as the kernel's video
parameter. These are mostly bpp values between 1 and 32. The exceptions
are 15, which has a color depth of 15 and a bpp value of 16; and 32,
which has a color depth of 24 and a bpp value of 32.

v4:
* add back lost test for bpp_specified (Maira)
* add Fixes tag (Daniel)
v3:
* fix ofdrm build (Maxime)
v2:
* minimize changes (Daniel)
* use drm_driver_legacy_fb_format() (Daniel)

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Tested-by: MaĆ­ra Canal <mcanal@igalia.com> # vc4 and vkms
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Fixes: 37c90d589dc0 ("drm/fb-helper: Fix single-probe color-format selection")
Cc: Thomas Zimmermann <tzimmermann@suse.de>
Cc: Javier Martinez Canillas <javierm@redhat.com>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Maxime Ripard <mripard@kernel.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20230106112324.22055-1-tzimmermann@suse.de
drivers/gpu/drm/drm_fb_helper.c
drivers/gpu/drm/tiny/ofdrm.c
drivers/gpu/drm/tiny/simpledrm.c