Hi, > (cc: Jocelyn) > > Hi > > Am 14.09.22 um 10:29 schrieb Wang Yugui: > > Hi, > > > > > >> Hi > >> > >> Am 13.09.22 um 17:15 schrieb Wang Yugui: > >> [...] > >>>>> > >>>>> so I tried to revert patch of mgag200 driver in batch of 2 or 3, the I > >>>>> noticed the patch 'Subject: drm/mgag200: Remove special case for G200SE > >>>>> with <2 MiB' and then tried this dirty fix. > >>>> > >>>> Oh, great work! Thank you. From looking at the screenshot that you provided, it seems as if the 24-bit mode setting is broken. I'm not sure why the G200SE workaround applies to a G200ER, but we'll see. > >>> > >>> I tested 'preferred_depth = 32' too. it works on T630 too. > >>> > >>> so both 16 and 32 work, but 24 failed on DELL/T630. > >> > >> I tried on my test machine with a 5.19 kernel and found that 32-bit and 24-bit pixels work, but 16-bit looks incorrect. > >> > >> What are the results if you boot your kernel 5.19.3 with the parameter video=1024x768-24? This should enable 24-bit pixels. > >> > >> How does video=1024x768-16 look with the 5.19 kernel? > > > > test result here > > kernel 5.19.3 & video=1024x768-24 > > dell/T620/centos-8.5 broken > > dell/T630/centos-7.9 broken > > I assume that Centos 7 and 8 have fairly old kernels? So it's been a long-standing bug. We install kernel 5.19.3/5.15.67 into Centos 7 and 8. default it work well. broken just when 'video=1024x768-24', so it may not a long-standing bug. > 24-bit works on my G200HE and G200 test machines. Maybe the G200ER has a bug. > > When I try 16-bit depth, the display works, but is way too dark. No fiddling with the LUT tables fixes this. It's 90s hardware, so it should support 16-bit framebuffers well, but there's no obvious bug to be seen. > > I guess, we could remove 16 and 24 bit support for now if nothing else helps. maybe better if we revert 73f54d5d9682 (drm/mgag200: Remove special case for G200SE with <2 MiB) because there is no test result on device G200_SE static unsigned int mgag200_preferred_depth(struct mga_device *mdev) { if (IS_G200_SE(mdev) && mdev->vram_fb_available < (2048*1024)) return 16; else return 32; } Best Regards Wang Yugui (wangyugui@xxxxxxxxxxxx) 2022/09/14