drm: panel-orientation-quirks: Add quirk for GPD win2
authorHans de Goede <hdegoede@redhat.com>
Sun, 9 Sep 2018 13:34:57 +0000 (15:34 +0200)
committerHans de Goede <hdegoede@redhat.com>
Thu, 27 Sep 2018 11:41:07 +0000 (13:41 +0200)
GPD has done it again, make a nice device (good), use way too generic
DMI strings (bad) and use a portrait screen rotated 90 degrees (ugly).

Because of the too generic DMI strings this entry is also doing bios-date
matching, so the gpd_win2 data struct may very well need to be updated
with some extra bios-dates in the future.

Reported-and-tested-by: russianneuromancer@ya.ru
Acked-by: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180909133457.10636-3-hdegoede@redhat.com
drivers/gpu/drm/drm_panel_orientation_quirks.c

index fe9c6c731e8787e1480a436bceb544a811c9b8c5..280a41d330814d9527d5dc6b06c20873e7d30f09 100644 (file)
@@ -53,6 +53,14 @@ static const struct drm_dmi_panel_orientation_data gpd_win = {
        .orientation = DRM_MODE_PANEL_ORIENTATION_RIGHT_UP,
 };
 
+static const struct drm_dmi_panel_orientation_data gpd_win2 = {
+       .width = 720,
+       .height = 1280,
+       .bios_dates = (const char * const []){
+               "12/07/2017", "05/24/2018", NULL },
+       .orientation = DRM_MODE_PANEL_ORIENTATION_RIGHT_UP,
+};
+
 static const struct drm_dmi_panel_orientation_data itworks_tw891 = {
        .width = 800,
        .height = 1280,
@@ -94,6 +102,14 @@ static const struct dmi_system_id orientation_data[] = {
                  DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Default string"),
                },
                .driver_data = (void *)&gpd_win,
+       }, {    /* GPD Win 2 (too generic strings, also match on bios date) */
+               .matches = {
+                 DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Default string"),
+                 DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Default string"),
+                 DMI_EXACT_MATCH(DMI_BOARD_VENDOR, "Default string"),
+                 DMI_EXACT_MATCH(DMI_BOARD_NAME, "Default string"),
+               },
+               .driver_data = (void *)&gpd_win2,
        }, {    /* I.T.Works TW891 */
                .matches = {
                  DMI_EXACT_MATCH(DMI_SYS_VENDOR, "To be filled by O.E.M."),