The kernel mis-interprets the display geometry given by the Lenovo
D330 as incorrect. The values are correct, but the display output
is rotated by 90°. With the kernel's firmware quirk applied the output
is garbled.

Remove the firmware quirk for the Lenovo D330 and let DRM's sysfb
drivers set the correct panel orientation instead. To make this work
for any display mode, use the panel size for looking up the correct
orientation.

Tested on a Lenovo D330-10IGM IdeaPad.

Thomas Zimmermann (3):
  drm/edid: Add drm_edid_get_preferred_size()
  drm/sysfb: Use preferred panel size for panel orientation quirks
  firmware/sysfb: Remove rotation quirk for Lenovo D330

 drivers/firmware/efi/sysfb_efi.c |  9 -------
 drivers/gpu/drm/drm_edid.c       | 40 ++++++++++++++++++++++++++++++++
 drivers/gpu/drm/sysfb/efidrm.c   | 17 +++++++++++++-
 drivers/gpu/drm/sysfb/ofdrm.c    | 16 ++++++++++++-
 drivers/gpu/drm/sysfb/vesadrm.c  | 17 +++++++++++++-
 include/drm/drm_edid.h           |  2 ++
 6 files changed, 89 insertions(+), 12 deletions(-)


base-commit: dc462ab791b686c48545c160ecc81be64f77a846
-- 
2.55.0

Reply via email to