Skip to content

two-step: Deal with buggy firmware which does not pre-rotate the bgrt image

Hans de Goede requested to merge jwrdegoede/plymouth:twostep-bgrt-fix into master

Some buggy Lenovo 2-in-1s with a 90 degree rotated panel, behave as if the panel is mounted up-right / not rotated at all. These devices have a buggy efifb size (landscape resolution instead of the actual portrait resolution of the panel), this gets fixed-up by the kernel.

These buggy devices also do not pre-rotate the bgrt_image nor do they set the ACPI-6.2 rotation status-bits. We can detect this by checking that the bgrt_image is perfectly centered horizontally when we use the panel's height as the width.

This commit uses this check to override the bgrt-rotation read from the ACPI-6.2 rotation status-bits, fixing us displaying the bgrt image with the wrong rotation.

BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=1730783 Signed-off-by: Hans de Goede hdegoede@redhat.com

Merge request reports