]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm: panel-orientation-quirks: Add quirks for AYA NEO Flip DS and KB
authorAndrew Wyatt <fewtarius@steamfork.org>
Thu, 13 Feb 2025 22:24:50 +0000 (22:24 +0000)
committerThomas Zimmermann <tzimmermann@suse.de>
Mon, 17 Feb 2025 08:19:05 +0000 (09:19 +0100)
The AYA NEO Flip DS and KB both use a 1080x1920 portrait LCD panel.  The
Flip DS additionally uses a 640x960 portrait LCD panel as a second display.

Add DMI matches to correctly rotate these panels.

Signed-off-by: Andrew Wyatt <fewtarius@steamfork.org>
Co-developed-by: John Edwards <uejji@uejji.net>
Signed-off-by: John Edwards <uejji@uejji.net>
Tested-by: Paco Avelar <pacoavelar@hotmail.com>
Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Link: https://patchwork.freedesktop.org/patch/msgid/20250213222455.93533-3-uejji@uejji.net
drivers/gpu/drm/drm_panel_orientation_quirks.c

index f9c975338fc9ee0b1b5fed4e49ba9e0467aebb14..b5f6ae0459459d528f92dd87b044a2ec41063b26 100644 (file)
@@ -93,6 +93,12 @@ static const struct drm_dmi_panel_orientation_data onegx1_pro = {
        .orientation = DRM_MODE_PANEL_ORIENTATION_RIGHT_UP,
 };
 
+static const struct drm_dmi_panel_orientation_data lcd640x960_leftside_up = {
+       .width = 640,
+       .height = 960,
+       .orientation = DRM_MODE_PANEL_ORIENTATION_LEFT_UP,
+};
+
 static const struct drm_dmi_panel_orientation_data lcd720x1280_rightside_up = {
        .width = 720,
        .height = 1280,
@@ -202,6 +208,18 @@ static const struct dmi_system_id orientation_data[] = {
                  DMI_MATCH(DMI_PRODUCT_NAME, "AIR"),
                },
                .driver_data = (void *)&lcd1080x1920_leftside_up,
+       }, {    /* AYA NEO Flip DS Bottom Screen */
+               .matches = {
+                 DMI_EXACT_MATCH(DMI_SYS_VENDOR, "AYANEO"),
+                 DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "FLIP DS"),
+               },
+               .driver_data = (void *)&lcd640x960_leftside_up,
+       }, {    /* AYA NEO Flip KB/DS Top Screen */
+               .matches = {
+                 DMI_EXACT_MATCH(DMI_SYS_VENDOR, "AYANEO"),
+                 DMI_MATCH(DMI_PRODUCT_NAME, "FLIP"),
+               },
+               .driver_data = (void *)&lcd1080x1920_leftside_up,
        }, {    /* AYA NEO Founder */
                .matches = {
                  DMI_EXACT_MATCH(DMI_SYS_VENDOR, "AYA NEO"),