All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] arm64: dts: rockchip: Correct Device Orientation
@ 2026-08-28 20:53 ` Chris Morgan
  0 siblings, 0 replies; 4+ messages in thread
From: Chris Morgan @ 2026-08-28 20:53 UTC (permalink / raw)
  To: linux-rockchip; +Cc: devicetree, heiko, conor+dt, krzk+dt, robh, Chris Morgan

From: Chris Morgan <macromorgan@hotmail.com>

The display, touchscreen, and IMU are currently not oriented
consistently. The touchscreen is 90 degrees offset and the IMU is using
the default mount matrix which is 180 degrees offset.

Fix the touchscreen alignment and add a mount matrix for the IMU. When
the device is held vertically relative to the display hardware, the
touchscreen 0,0 position is in the top left corner of the display
(next to the home button), and the IMU reads the correct orientation.

Fixes: 4e946c447a04 ("arm64: dts: rockchip: Add GameForce Ace")
Signed-off-by: Chris Morgan <macromorgan@hotmail.com>
---
 arch/arm64/boot/dts/rockchip/rk3588s-gameforce-ace.dts | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/arch/arm64/boot/dts/rockchip/rk3588s-gameforce-ace.dts b/arch/arm64/boot/dts/rockchip/rk3588s-gameforce-ace.dts
index 230aac005e8f..d43eb48152e8 100644
--- a/arch/arm64/boot/dts/rockchip/rk3588s-gameforce-ace.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3588s-gameforce-ace.dts
@@ -596,6 +596,7 @@ regulator-state-mem {
 &i2c3 {
 	status = "okay";
 
+	/* Touchscreen is rotated 90 degrees with 0,0 position near home button. */
 	touchscreen@14 {
 		compatible = "goodix,gt911";
 		reg = <0x14>;
@@ -605,10 +606,8 @@ touchscreen@14 {
 		pinctrl-0 = <&touch_int>, <&touch_rst>;
 		pinctrl-names = "default";
 		reset-gpios = <&gpio1 RK_PA7 GPIO_ACTIVE_HIGH>;
-		touchscreen-inverted-x;
 		touchscreen-size-x = <1080>;
 		touchscreen-size-y = <1920>;
-		touchscreen-swapped-x-y;
 	};
 };
 
@@ -641,11 +640,15 @@ channel@7 {
 		};
 	};
 
+	/* IMU oriented relative to panel, which is rotated 90 degrees. */
 	imu@68 {
 		compatible = "invensense,mpu6880";
 		reg = <0x68>;
 		interrupt-parent = <&gpio0>;
 		interrupts = <RK_PD3 IRQ_TYPE_EDGE_RISING>;
+		mount-matrix = "-1", "0", "0",
+			       "0", "-1", "0",
+			       "0", "0", "1";
 	};
 };
 
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [PATCH] arm64: dts: rockchip: Correct Device Orientation
@ 2026-08-28 20:53 ` Chris Morgan
  0 siblings, 0 replies; 4+ messages in thread
From: Chris Morgan @ 2026-08-28 20:53 UTC (permalink / raw)
  To: linux-rockchip; +Cc: devicetree, heiko, conor+dt, krzk+dt, robh, Chris Morgan

From: Chris Morgan <macromorgan@hotmail.com>

The display, touchscreen, and IMU are currently not oriented
consistently. The touchscreen is 90 degrees offset and the IMU is using
the default mount matrix which is 180 degrees offset.

Fix the touchscreen alignment and add a mount matrix for the IMU. When
the device is held vertically relative to the display hardware, the
touchscreen 0,0 position is in the top left corner of the display
(next to the home button), and the IMU reads the correct orientation.

Fixes: 4e946c447a04 ("arm64: dts: rockchip: Add GameForce Ace")
Signed-off-by: Chris Morgan <macromorgan@hotmail.com>
---
 arch/arm64/boot/dts/rockchip/rk3588s-gameforce-ace.dts | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/arch/arm64/boot/dts/rockchip/rk3588s-gameforce-ace.dts b/arch/arm64/boot/dts/rockchip/rk3588s-gameforce-ace.dts
index 230aac005e8f..d43eb48152e8 100644
--- a/arch/arm64/boot/dts/rockchip/rk3588s-gameforce-ace.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3588s-gameforce-ace.dts
@@ -596,6 +596,7 @@ regulator-state-mem {
 &i2c3 {
 	status = "okay";
 
+	/* Touchscreen is rotated 90 degrees with 0,0 position near home button. */
 	touchscreen@14 {
 		compatible = "goodix,gt911";
 		reg = <0x14>;
@@ -605,10 +606,8 @@ touchscreen@14 {
 		pinctrl-0 = <&touch_int>, <&touch_rst>;
 		pinctrl-names = "default";
 		reset-gpios = <&gpio1 RK_PA7 GPIO_ACTIVE_HIGH>;
-		touchscreen-inverted-x;
 		touchscreen-size-x = <1080>;
 		touchscreen-size-y = <1920>;
-		touchscreen-swapped-x-y;
 	};
 };
 
@@ -641,11 +640,15 @@ channel@7 {
 		};
 	};
 
+	/* IMU oriented relative to panel, which is rotated 90 degrees. */
 	imu@68 {
 		compatible = "invensense,mpu6880";
 		reg = <0x68>;
 		interrupt-parent = <&gpio0>;
 		interrupts = <RK_PD3 IRQ_TYPE_EDGE_RISING>;
+		mount-matrix = "-1", "0", "0",
+			       "0", "-1", "0",
+			       "0", "0", "1";
 	};
 };
 
-- 
2.43.0


_______________________________________________
Linux-rockchip mailing list
Linux-rockchip@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-rockchip

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] arm64: dts: rockchip: Correct Device Orientation
  2026-08-28 20:53 ` Chris Morgan
@ 2026-09-02 11:11   ` Heiko Stuebner
  -1 siblings, 0 replies; 4+ messages in thread
From: Heiko Stuebner @ 2026-09-02 11:11 UTC (permalink / raw)
  To: linux-rockchip, Chris Morgan
  Cc: Heiko Stuebner, devicetree, conor+dt, krzk+dt, robh, Chris Morgan


On Fri, 28 Aug 2026 15:53:31 -0500, Chris Morgan wrote:
> The display, touchscreen, and IMU are currently not oriented
> consistently. The touchscreen is 90 degrees offset and the IMU is using
> the default mount matrix which is 180 degrees offset.
> 
> Fix the touchscreen alignment and add a mount matrix for the IMU. When
> the device is held vertically relative to the display hardware, the
> touchscreen 0,0 position is in the top left corner of the display
> (next to the home button), and the IMU reads the correct orientation.
> 
> [...]

Applied, thanks!

[1/1] arm64: dts: rockchip: Correct Device Orientation
      commit: 0d170ee38e7a943248082cdb4b3e40b45a96e2f6

Best regards,
-- 
Heiko Stuebner <heiko@sntech.de>

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] arm64: dts: rockchip: Correct Device Orientation
@ 2026-09-02 11:11   ` Heiko Stuebner
  0 siblings, 0 replies; 4+ messages in thread
From: Heiko Stuebner @ 2026-09-02 11:11 UTC (permalink / raw)
  To: linux-rockchip, Chris Morgan
  Cc: Heiko Stuebner, devicetree, conor+dt, krzk+dt, robh, Chris Morgan


On Fri, 28 Aug 2026 15:53:31 -0500, Chris Morgan wrote:
> The display, touchscreen, and IMU are currently not oriented
> consistently. The touchscreen is 90 degrees offset and the IMU is using
> the default mount matrix which is 180 degrees offset.
> 
> Fix the touchscreen alignment and add a mount matrix for the IMU. When
> the device is held vertically relative to the display hardware, the
> touchscreen 0,0 position is in the top left corner of the display
> (next to the home button), and the IMU reads the correct orientation.
> 
> [...]

Applied, thanks!

[1/1] arm64: dts: rockchip: Correct Device Orientation
      commit: 0d170ee38e7a943248082cdb4b3e40b45a96e2f6

Best regards,
-- 
Heiko Stuebner <heiko@sntech.de>

_______________________________________________
Linux-rockchip mailing list
Linux-rockchip@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-rockchip

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2026-09-02 11:11 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-28 20:53 [PATCH] arm64: dts: rockchip: Correct Device Orientation Chris Morgan
2026-08-28 20:53 ` Chris Morgan
2026-09-02 11:11 ` Heiko Stuebner
2026-09-02 11:11   ` Heiko Stuebner

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.