diff options
author | Mark Kettenis | 2021-09-25 22:47:38 +0200 |
---|---|---|
committer | Anatolij Gustschin | 2021-10-09 18:48:25 +0200 |
commit | 2c2653d6f98eef645420f170869181710955a166 (patch) | |
tree | a80bcd9fc2a8d9e88a9f4c62f89c11f2d781c9fe /drivers/video/simplefb.c | |
parent | 01fcf0eea634c727980a8b7d2d08c61fe7f142d9 (diff) |
video: simplefb: Add 30bpp support
Recognize the canonical format strings for framebuffers in
30bpp mode and 32/24bpp mode.
Signed-off-by: Mark Kettenis <kettenis@openbsd.org>
Diffstat (limited to 'drivers/video/simplefb.c')
-rw-r--r-- | drivers/video/simplefb.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/drivers/video/simplefb.c b/drivers/video/simplefb.c index fd58426cf5d..2b0d8835e38 100644 --- a/drivers/video/simplefb.c +++ b/drivers/video/simplefb.c @@ -50,8 +50,18 @@ static int simple_video_probe(struct udevice *dev) if (strcmp(format, "r5g6b5") == 0) { uc_priv->bpix = VIDEO_BPP16; - } else if (strcmp(format, "a8b8g8r8") == 0) { + } else if (strcmp(format, "a8b8g8r8") == 0 || + strcmp(format, "x8b8g8r8") == 0) { uc_priv->bpix = VIDEO_BPP32; + uc_priv->format = VIDEO_X8B8G8R8; + } else if (strcmp(format, "a8r8g8b8") == 0 || + strcmp(format, "x8r8g8b8") == 0) { + uc_priv->bpix = VIDEO_BPP32; + uc_priv->format = VIDEO_X8R8G8B8; + } else if (strcmp(format, "a2r10g10b10") == 0 || + strcmp(format, "x2r10g10b10") == 0) { + uc_priv->bpix = VIDEO_BPP32; + uc_priv->format = VIDEO_X2R10G10B10; } else { printf("%s: invalid format: %s\n", __func__, format); return -EINVAL; |