We have more handhelds in the One XPLAYER lineup now that needs support added to the orientation-quirks.
By adding more native resolution checks and the one unique BIOS variant available we add support to most devices.
Signed-off-by: Matthew Anderson <[email protected]>
---
.../gpu/drm/drm_panel_orientation_quirks.c | 30 +++++++++++++++++++
1 file changed, 30 insertions(+)
diff --git a/drivers/gpu/drm/drm_panel_orientation_quirks.c b/drivers/gpu/drm/drm_panel_orientation_quirks.c
index 52d8800a8ab8..335d636e6696 100644
--- a/drivers/gpu/drm/drm_panel_orientation_quirks.c
+++ b/drivers/gpu/drm/drm_panel_orientation_quirks.c
@@ -103,6 +103,12 @@ static const struct drm_dmi_panel_orientation_data lcd800x1280_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 lcd1080x1920_leftside_up = {
.width = 1080,
.height = 1920,
@@ -115,6 +121,12 @@ static const struct drm_dmi_panel_orientation_data lcd1200x1920_rightside_up = {
.orientation = DRM_MODE_PANEL_ORIENTATION_RIGHT_UP,
};
+static const struct drm_dmi_panel_orientation_data lcd1200x1920_leftside_up = {
+ .width = 1200,
+ .height = 1920,
+ .orientation = DRM_MODE_PANEL_ORIENTATION_LEFT_UP,
+};
+
static const struct drm_dmi_panel_orientation_data lcd1280x1920_rightside_up = {
.width = 1280,
.height = 1920,
@@ -344,6 +356,24 @@ static const struct dmi_system_id orientation_data[] = {
DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "ONE XPLAYER"),
},
.driver_data = (void *)&lcd1600x2560_leftside_up,
+ }, { /* OneXPlayer Mini 800p */
+ .matches = {
+ DMI_EXACT_MATCH(DMI_SYS_VENDOR, "ONE-NETBOOK TECHNOLOGY CO., LTD."),
+ DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "ONE XPLAYER"),
+ },
+ .driver_data = (void *)&lcd800x1280_leftside_up,
+ }, { /* OneXPlayer Mini 1200p */
+ .matches = {
+ DMI_EXACT_MATCH(DMI_SYS_VENDOR, "ONE-NETBOOK TECHNOLOGY CO., LTD."),
+ DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "ONE XPLAYER"),
+ },
+ .driver_data = (void *)&lcd1200x1920_leftside_up,
+ }, { /* OneXPlayer Mini A07 Bios Variant */
+ .matches = {
+ DMI_EXACT_MATCH(DMI_SYS_VENDOR, "ONE-NETBOOK"),
+ DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "ONEXPLAYER mini A07"),
+ },
+ .driver_data = (void *)&lcd800x1280_leftside_up,
}, { /* Samsung GalaxyBook 10.6 */
.matches = {
DMI_EXACT_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."),
--
2.34.1
I'm just following up to see where things are standing for this patch.
I've seen other orientation patches make it's way to the kernel and am
wondering if there is something I need to do on my end.
On 12/13/22 11:10 AM, Matthew Anderson wrote:
> We have more handhelds in the One XPLAYER lineup now that needs support added to the orientation-quirks.
> By adding more native resolution checks and the one unique BIOS variant available we add support to most devices.
>
> Signed-off-by: Matthew Anderson <[email protected]>
> ---
> .../gpu/drm/drm_panel_orientation_quirks.c | 30 +++++++++++++++++++
> 1 file changed, 30 insertions(+)
>
> diff --git a/drivers/gpu/drm/drm_panel_orientation_quirks.c b/drivers/gpu/drm/drm_panel_orientation_quirks.c
> index 52d8800a8ab8..335d636e6696 100644
> --- a/drivers/gpu/drm/drm_panel_orientation_quirks.c
> +++ b/drivers/gpu/drm/drm_panel_orientation_quirks.c
> @@ -103,6 +103,12 @@ static const struct drm_dmi_panel_orientation_data lcd800x1280_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 lcd1080x1920_leftside_up = {
> .width = 1080,
> .height = 1920,
> @@ -115,6 +121,12 @@ static const struct drm_dmi_panel_orientation_data lcd1200x1920_rightside_up = {
> .orientation = DRM_MODE_PANEL_ORIENTATION_RIGHT_UP,
> };
>
> +static const struct drm_dmi_panel_orientation_data lcd1200x1920_leftside_up = {
> + .width = 1200,
> + .height = 1920,
> + .orientation = DRM_MODE_PANEL_ORIENTATION_LEFT_UP,
> +};
> +
> static const struct drm_dmi_panel_orientation_data lcd1280x1920_rightside_up = {
> .width = 1280,
> .height = 1920,
> @@ -344,6 +356,24 @@ static const struct dmi_system_id orientation_data[] = {
> DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "ONE XPLAYER"),
> },
> .driver_data = (void *)&lcd1600x2560_leftside_up,
> + }, { /* OneXPlayer Mini 800p */
> + .matches = {
> + DMI_EXACT_MATCH(DMI_SYS_VENDOR, "ONE-NETBOOK TECHNOLOGY CO., LTD."),
> + DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "ONE XPLAYER"),
> + },
> + .driver_data = (void *)&lcd800x1280_leftside_up,
> + }, { /* OneXPlayer Mini 1200p */
> + .matches = {
> + DMI_EXACT_MATCH(DMI_SYS_VENDOR, "ONE-NETBOOK TECHNOLOGY CO., LTD."),
> + DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "ONE XPLAYER"),
> + },
> + .driver_data = (void *)&lcd1200x1920_leftside_up,
> + }, { /* OneXPlayer Mini A07 Bios Variant */
> + .matches = {
> + DMI_EXACT_MATCH(DMI_SYS_VENDOR, "ONE-NETBOOK"),
> + DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "ONEXPLAYER mini A07"),
> + },
> + .driver_data = (void *)&lcd800x1280_leftside_up,
> }, { /* Samsung GalaxyBook 10.6 */
> .matches = {
> DMI_EXACT_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."),