diff options
author | Stefan Agner <stefan@agner.ch> | 2016-12-22 15:41:06 +0100 |
---|---|---|
committer | Adam Jackson <ajax@redhat.com> | 2018-07-10 13:28:37 -0400 |
commit | 1c7f34e99ff9750979a03ae20c6be1f2b42c284c (patch) | |
tree | 44d9576cd48011358f3423b8c1abecc5d07aae9d | |
parent | d95a1310ef8e08a93a28f9766d1b4093f7891404 (diff) |
modesetting: Fix 16 bit depth/bpp mode
When setting DefaultDepth to 16 in the Screen section, the current
code requests a 32 bpp framebuffer, however the X-Server seems to
assumes 16 bpp.
Fixes commit 21217d02168d ("modesetting: Implement 32->24 bpp
conversion in shadow update")
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Stefan Agner <stefan@agner.ch>
-rw-r--r-- | hw/xfree86/drivers/modesetting/driver.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/hw/xfree86/drivers/modesetting/driver.c b/hw/xfree86/drivers/modesetting/driver.c index a4912a971..4a6643961 100644 --- a/hw/xfree86/drivers/modesetting/driver.c +++ b/hw/xfree86/drivers/modesetting/driver.c @@ -940,7 +940,7 @@ PreInit(ScrnInfoPtr pScrn, int flags) "Using 24bpp hw front buffer with 32bpp shadow\n"); defaultbpp = 32; } else { - ms->drmmode.kbpp = defaultbpp; + ms->drmmode.kbpp = 0; } bppflags = PreferConvert24to32 | SupportConvert24to32 | Support32bppFb; @@ -961,6 +961,8 @@ PreInit(ScrnInfoPtr pScrn, int flags) return FALSE; } xf86PrintDepthBpp(pScrn); + if (!ms->drmmode.kbpp) + ms->drmmode.kbpp = pScrn->bitsPerPixel; /* Process the options */ xf86CollectOptions(pScrn, NULL); |