drm/ast: Linux 4.14 AST DRM driver might not load gamma table [patch proposed]

Carroll, Lewis Lewis.Carroll at amd.com
Mon Dec 18 00:08:49 UTC 2017

Happy Holidays.

Test-driving Linux 4.14 from the Ubuntu Bionic repo on an AMD EPYC server using the A-Speed AST2500 BMC and the AST DRM driver and framebuffer console configured into the kernel, I have observed multiple systems where the analog VGA color palette for the framebuffer console is incorrect. Background is blue and all text colors other than white / gray are incorrect.

Instrumenting the AST DRM driver, it seems the default gamma table isn't loaded to the silicon until there is a DPMS action. When there is a DPMS action other than DPMS OFF, the gamma table is loaded and all is well. On these boards, the kernel is not calling for a DPMS event at driver init so the gamma table is not loaded.

The attached proposed patch adds a DPMS ON event to the commit callback after a kernel modeset call. This solves the problem, however there may be a better / more proper way to solve this.

Assuming no one on the mailing list has hardware on which to verify this, I am happy to be a test driver for any suggested fixes.


Lewis Carroll
Principal Solutions Architect
AMD Enterprise Business Group

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20171218/24f0bfd8/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Linux_4.14_drm_ast_fix_corrupted_gamma.patch
Type: application/octet-stream
Size: 3665 bytes
Desc: Linux_4.14_drm_ast_fix_corrupted_gamma.patch
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20171218/24f0bfd8/attachment-0001.obj>

More information about the dri-devel mailing list