mirror of
https://abf.rosa.ru/djam/kernel-5.15.git
synced 2025-02-24 02:52:55 +00:00
50 lines
1.7 KiB
Diff
50 lines
1.7 KiB
Diff
![]() |
From: Takashi Iwai <tiwai@suse.de>
|
||
|
Date: Fri, 25 Jan 2013 17:08:03 +0100
|
||
|
Subject: [PATCH] drm/cirrus: Use 16bpp as default
|
||
|
Patch-mainline: Submitted
|
||
|
References: bnc#799216
|
||
|
|
||
|
We've got a bug report that GNOME on QEMU shows wrong colors.
|
||
|
It turned out that it's because Cairo doesn't support 24bpp well.
|
||
|
This hasn't been an issue until now because we (at least SUSE and
|
||
|
Fedora) have a patch to use 16bpp for QEMU in Xorg cirrus UMS driver.
|
||
|
|
||
|
Since cirrus KMS driver is mainly targeted for the use on QEMU/KVM, we
|
||
|
should choose 16bpp as default, too.
|
||
|
|
||
|
Also, it's not convenient to set the default bpp in multiple places.
|
||
|
cirrus_fbdev_init() should check the original preferred depth set in
|
||
|
cirrus_modeset_init().
|
||
|
|
||
|
Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=799216
|
||
|
|
||
|
Signed-off-by: Takashi Iwai <tiwai@suse.de>
|
||
|
|
||
|
---
|
||
|
drivers/gpu/drm/cirrus/cirrus_fbdev.c | 2 +-
|
||
|
drivers/gpu/drm/cirrus/cirrus_mode.c | 2 +-
|
||
|
2 files changed, 2 insertions(+), 2 deletions(-)
|
||
|
|
||
|
--- a/drivers/gpu/drm/cirrus/cirrus_fbdev.c
|
||
|
+++ b/drivers/gpu/drm/cirrus/cirrus_fbdev.c
|
||
|
@@ -273,7 +273,7 @@ int cirrus_fbdev_init(struct cirrus_devi
|
||
|
{
|
||
|
struct cirrus_fbdev *gfbdev;
|
||
|
int ret;
|
||
|
- int bpp_sel = 24;
|
||
|
+ int bpp_sel = cdev->dev->mode_config.preferred_depth;
|
||
|
|
||
|
/*bpp_sel = 8;*/
|
||
|
gfbdev = kzalloc(sizeof(struct cirrus_fbdev), GFP_KERNEL);
|
||
|
--- a/drivers/gpu/drm/cirrus/cirrus_mode.c
|
||
|
+++ b/drivers/gpu/drm/cirrus/cirrus_mode.c
|
||
|
@@ -588,7 +588,7 @@ int cirrus_modeset_init(struct cirrus_de
|
||
|
cdev->dev->mode_config.max_height = CIRRUS_MAX_FB_HEIGHT;
|
||
|
|
||
|
cdev->dev->mode_config.fb_base = cdev->mc.vram_base;
|
||
|
- cdev->dev->mode_config.preferred_depth = 24;
|
||
|
+ cdev->dev->mode_config.preferred_depth = 16;
|
||
|
/* don't prefer a shadow on virt GPU */
|
||
|
cdev->dev->mode_config.prefer_shadow = 0;
|
||
|
|