drm: Add orientation quirk for DynaBook K50
Commit Message
Like the ASUS T100HAN for which there is already a quirk,
the DynaBook K50 has a 800x1280 portrait screen mounted
in the tablet part of a landscape oriented 2-in-1.
Update the quirk to be more generic and apply to this device.
Signed-off-by: Allen Ballway <ballway@chromium.org>
---
.../gpu/drm/drm_panel_orientation_quirks.c | 20 ++++++++++++-------
1 file changed, 13 insertions(+), 7 deletions(-)
--
2.38.1.584.g0f3c55d4c2-goog
Comments
Hi,
On 11/30/22 18:08, Allen Ballway wrote:
> Like the ASUS T100HAN for which there is already a quirk,
> the DynaBook K50 has a 800x1280 portrait screen mounted
> in the tablet part of a landscape oriented 2-in-1.
> Update the quirk to be more generic and apply to this device.
>
> Signed-off-by: Allen Ballway <ballway@chromium.org>
Thanks, patch looks good to me:
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
I've pushed this to drm-misc-next now.
Regards,
Hans
> ---
>
> .../gpu/drm/drm_panel_orientation_quirks.c | 20 ++++++++++++-------
> 1 file changed, 13 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/gpu/drm/drm_panel_orientation_quirks.c b/drivers/gpu/drm/drm_panel_orientation_quirks.c
> index 52d8800a8ab86..14f870fb2db04 100644
> --- a/drivers/gpu/drm/drm_panel_orientation_quirks.c
> +++ b/drivers/gpu/drm/drm_panel_orientation_quirks.c
> @@ -30,12 +30,6 @@ struct drm_dmi_panel_orientation_data {
> int orientation;
> };
>
> -static const struct drm_dmi_panel_orientation_data asus_t100ha = {
> - .width = 800,
> - .height = 1280,
> - .orientation = DRM_MODE_PANEL_ORIENTATION_LEFT_UP,
> -};
> -
> static const struct drm_dmi_panel_orientation_data gpd_micropc = {
> .width = 720,
> .height = 1280,
> @@ -121,6 +115,12 @@ static const struct drm_dmi_panel_orientation_data lcd1280x1920_rightside_up = {
> .orientation = DRM_MODE_PANEL_ORIENTATION_RIGHT_UP,
> };
>
> +static const struct drm_dmi_panel_orientation_data lcd800x1280_leftside_up = {
> + .width = 800,
> + .height = 1280,
> + .orientation = DRM_MODE_PANEL_ORIENTATION_LEFT_UP,
> +};
> +
> static const struct drm_dmi_panel_orientation_data lcd1600x2560_leftside_up = {
> .width = 1600,
> .height = 2560,
> @@ -151,7 +151,7 @@ static const struct dmi_system_id orientation_data[] = {
> DMI_EXACT_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),
> DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "T100HAN"),
> },
> - .driver_data = (void *)&asus_t100ha,
> + .driver_data = (void *)&lcd800x1280_leftside_up,
> }, { /* Asus T101HA */
> .matches = {
> DMI_EXACT_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),
> @@ -196,6 +196,12 @@ static const struct dmi_system_id orientation_data[] = {
> DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Hi10 pro tablet"),
> },
> .driver_data = (void *)&lcd1200x1920_rightside_up,
> + }, { /* Dynabook K50 */
> + .matches = {
> + DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Dynabook Inc."),
> + DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "dynabook K50/FR"),
> + },
> + .driver_data = (void *)&lcd800x1280_leftside_up,
> }, { /* GPD MicroPC (generic strings, also match on bios date) */
> .matches = {
> DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Default string"),
> --
> 2.38.1.584.g0f3c55d4c2-goog
>
@@ -30,12 +30,6 @@ struct drm_dmi_panel_orientation_data {
int orientation;
};
-static const struct drm_dmi_panel_orientation_data asus_t100ha = {
- .width = 800,
- .height = 1280,
- .orientation = DRM_MODE_PANEL_ORIENTATION_LEFT_UP,
-};
-
static const struct drm_dmi_panel_orientation_data gpd_micropc = {
.width = 720,
.height = 1280,
@@ -121,6 +115,12 @@ static const struct drm_dmi_panel_orientation_data lcd1280x1920_rightside_up = {
.orientation = DRM_MODE_PANEL_ORIENTATION_RIGHT_UP,
};
+static const struct drm_dmi_panel_orientation_data lcd800x1280_leftside_up = {
+ .width = 800,
+ .height = 1280,
+ .orientation = DRM_MODE_PANEL_ORIENTATION_LEFT_UP,
+};
+
static const struct drm_dmi_panel_orientation_data lcd1600x2560_leftside_up = {
.width = 1600,
.height = 2560,
@@ -151,7 +151,7 @@ static const struct dmi_system_id orientation_data[] = {
DMI_EXACT_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),
DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "T100HAN"),
},
- .driver_data = (void *)&asus_t100ha,
+ .driver_data = (void *)&lcd800x1280_leftside_up,
}, { /* Asus T101HA */
.matches = {
DMI_EXACT_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),
@@ -196,6 +196,12 @@ static const struct dmi_system_id orientation_data[] = {
DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Hi10 pro tablet"),
},
.driver_data = (void *)&lcd1200x1920_rightside_up,
+ }, { /* Dynabook K50 */
+ .matches = {
+ DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Dynabook Inc."),
+ DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "dynabook K50/FR"),
+ },
+ .driver_data = (void *)&lcd800x1280_leftside_up,
}, { /* GPD MicroPC (generic strings, also match on bios date) */
.matches = {
DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Default string"),