]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
drm/vkms: Add support for ARGB16161616 formats
authorLouis Chauvet <louis.chauvet@bootlin.com>
Thu, 3 Jul 2025 07:56:59 +0000 (09:56 +0200)
committerLouis Chauvet <louis.chauvet@bootlin.com>
Fri, 5 Sep 2025 17:57:24 +0000 (19:57 +0200)
The formats XRGB16161616 and ARGB16161616 were already supported.
Add the support for:
- ABGR16161616
- XBGR16161616

Reviewed-by: MaĆ­ra Canal <mcanal@igalia.com>
Acked-by: Daniel Stone <daniels@collabora.com>
Link: https://lore.kernel.org/r/20250703-b4-new-color-formats-v7-3-15fd8fd2e15c@bootlin.com
Signed-off-by: Louis Chauvet <louis.chauvet@bootlin.com>
drivers/gpu/drm/vkms/vkms_formats.c
drivers/gpu/drm/vkms/vkms_plane.c

index b11cb2955943069e7ec9895cc482e3e0a2071b63..c37d1aae6eac184ebbc0ae39cb90adda1f52af6e 100644 (file)
@@ -446,7 +446,9 @@ READ_LINE_ARGB8888(RGBA8888_read_line, px, px[0], px[3], px[2], px[1])
 READ_LINE_ARGB8888(BGRA8888_read_line, px, px[0], px[1], px[2], px[3])
 
 READ_LINE_le16161616(ARGB16161616_read_line, px, px[3], px[2], px[1], px[0])
+READ_LINE_le16161616(ABGR16161616_read_line, px, px[3], px[0], px[1], px[2])
 READ_LINE_le16161616(XRGB16161616_read_line, px, cpu_to_le16(0xFFFF), px[2], px[1], px[0])
+READ_LINE_le16161616(XBGR16161616_read_line, px, cpu_to_le16(0xFFFF), px[0], px[1], px[2])
 
 READ_LINE(RGB565_read_line, px, __le16, argb_u16_from_RGB565, px)
 
@@ -665,8 +667,12 @@ pixel_read_line_t get_pixel_read_line_function(u32 format)
                return &XBGR8888_read_line;
        case DRM_FORMAT_ARGB16161616:
                return &ARGB16161616_read_line;
+       case DRM_FORMAT_ABGR16161616:
+               return &ABGR16161616_read_line;
        case DRM_FORMAT_XRGB16161616:
                return &XRGB16161616_read_line;
+       case DRM_FORMAT_XBGR16161616:
+               return &XBGR16161616_read_line;
        case DRM_FORMAT_RGB565:
                return &RGB565_read_line;
        case DRM_FORMAT_NV12:
index 01fed722808b7e37313fa9cf229401f24866f954..d4c51b4486f77fbc9cd46e42480a50c0a710a359 100644 (file)
@@ -20,7 +20,9 @@ static const u32 vkms_formats[] = {
        DRM_FORMAT_XRGB8888,
        DRM_FORMAT_XBGR8888,
        DRM_FORMAT_XRGB16161616,
+       DRM_FORMAT_XBGR16161616,
        DRM_FORMAT_ARGB16161616,
+       DRM_FORMAT_ABGR16161616,
        DRM_FORMAT_RGB565,
        DRM_FORMAT_NV12,
        DRM_FORMAT_NV16,