Linux 7.0 Brings An EFI Framebuffer Quirk For Valve's Steam Deck
([Valve] 41 Minutes Ago
Linux 7.0 EFI)
- Reference: 0001612503
- News link: https://www.phoronix.com/news/Linux-7.0-EFI
- Source link:
The EFI subsystem updates have been merged for the in-development [1]Linux 7.0 kernel. Worth mentioning here is a new quirk for helping Valve's Steam Deck handheld.
Tvrtko Ursulin of Igalia landed a fix to the EFI system frame-buffer code for fixing the EFIDRMFB and SimpleDRMFB frame-buffer drivers on Valve's Steam Deck. This quirk/fix is ultimately to allow using the frame-buffer drivers in the correct orientation and ensuring a fake mode isn't used that could lead to corrupted rendering.
Ursulin explained with the now-merged patch:
"Valve Steam Deck has a 800x1280 portrait screen installed in a landscape orientation. The firmware offers a software-rotated 1280x800 mode, which GRUB can be made to switch to when displaying a boot menu. If this mode was selected frame buffer drivers will see this fake mode and fbcon rendering will be corrupted.
Let us therefore add a selective quirk inside the current "swap with and height" handling, which will detect this exact mode and fix it up back to the native one.
This will allow the DRM-based framebuffer drivers to detect the correct mode, apply the existing panel orientation quirk, and render the console in landscape mode with no corruption."
That is the main change worth pointing out in the otherwise straight-forward [2]EFI merge of changes for Linux 7.0.
[1] https://www.phoronix.com/search/Linux+7.0
[2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=0c61526621ec1916527d6f6226d8a466340cca22
Tvrtko Ursulin of Igalia landed a fix to the EFI system frame-buffer code for fixing the EFIDRMFB and SimpleDRMFB frame-buffer drivers on Valve's Steam Deck. This quirk/fix is ultimately to allow using the frame-buffer drivers in the correct orientation and ensuring a fake mode isn't used that could lead to corrupted rendering.
Ursulin explained with the now-merged patch:
"Valve Steam Deck has a 800x1280 portrait screen installed in a landscape orientation. The firmware offers a software-rotated 1280x800 mode, which GRUB can be made to switch to when displaying a boot menu. If this mode was selected frame buffer drivers will see this fake mode and fbcon rendering will be corrupted.
Let us therefore add a selective quirk inside the current "swap with and height" handling, which will detect this exact mode and fix it up back to the native one.
This will allow the DRM-based framebuffer drivers to detect the correct mode, apply the existing panel orientation quirk, and render the console in landscape mode with no corruption."
That is the main change worth pointing out in the otherwise straight-forward [2]EFI merge of changes for Linux 7.0.
[1] https://www.phoronix.com/search/Linux+7.0
[2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=0c61526621ec1916527d6f6226d8a466340cca22