Hi

Am 10.09.26 um 09:23 schrieb Javier Martinez Canillas:
Thomas Zimmermann <[email protected]> writes:

Hello Thomas,

The Lenovo D330 is a notebook with detachable display. The display
is installed in landscape orientation, but the display mode is in
portrait orientation. By default, the display output is rotated to
the left by 90°.

The sysfb quirk breaks the display by swapping display width and
height; and thus mixing up the display geometry. Fix this by keeping
the display as-is. The sysfb DRM drivers, usually efidrm, will pick
the correct panel orientation for the display.

The exact behavior might depend on the version of the BIOS release,
but the exact version numbers of broken and good releases are unknown.
Users are advised to update to the latest firmware.

Tested on a Lenovo D330-10IGM IdeaPad with firmware 8NCN43WW.

v3:
- mention possible dependency on BIOS release in commit description

Signed-off-by: Thomas Zimmermann <[email protected]>
Acked-by: Ard Biesheuvel <[email protected]>
---
  drivers/firmware/efi/sysfb_efi.c | 9 ---------
  1 file changed, 9 deletions(-)

diff --git a/drivers/firmware/efi/sysfb_efi.c b/drivers/firmware/efi/sysfb_efi.c
index 685283bb7327..2338de73c62c 100644
--- a/drivers/firmware/efi/sysfb_efi.c
+++ b/drivers/firmware/efi/sysfb_efi.c
@@ -301,15 +301,6 @@ static const struct dmi_system_id 
efifb_dmi_swap_width_height[] __initconst = {
                },
                .callback = efifb_swap_width_height,
        },
-       {
-               /* Lenovo D330 with 800x1280 or 1200x1920 portrait screen */
-               .matches = {
-                       DMI_EXACT_MATCH(DMI_SYS_VENDOR, "LENOVO"),
-                       DMI_EXACT_MATCH(DMI_PRODUCT_VERSION,
-                                       "Lenovo ideapad D330-10IGM"),
-               },
-               .callback = efifb_swap_width_height,
-       },
Agreed that is better to rely on the information provided by the
firmware, instead of having this quirk. Specially given that it
breaks when the firmware provides the correct display geometry.

The plan is to tell users to upgrade to the latest firmware if we hear about regressions. The update is available on Lenovo's homepage. If an update really isn't possible for a user, we should at least know which firmware revision is broken. Then we can add back the quirk only for that specific release.

Best regards
Thomas



Reviewed-by: Javier Martinez Canillas <[email protected]>


--
--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Frankenstr. 146, 90461 Nürnberg, Germany, www.suse.com
GF: Jochen Jaser, Andrew McDonald, (HRB 36809, AG Nürnberg)


Reply via email to