diff mbox series

arm64: dts: mt8192-asurada-spherion: Add Synaptics trackpad support

Message ID 20240912154451.3447081-1-treapking@chromium.org (mailing list archive)
State New, archived
Headers show
Series arm64: dts: mt8192-asurada-spherion: Add Synaptics trackpad support | expand

Commit Message

Pin-yen Lin Sept. 12, 2024, 3:44 p.m. UTC
Some spherion variants use Synaptics trackpad at address 0x2c in the
I2C2 bus with the generic HID-over-i2c driver, and this cannot be
distinguished from the firmware compatible string.

Support both trackpads in the same devicetree by moving the trackpad
pinctrl property to i2c2 and adding the node for Synaptics trackpad.

Signed-off-by: Pin-yen Lin <treapking@chromium.org>
---

 .../boot/dts/mediatek/mt8192-asurada-spherion-r0.dts  | 11 +++++++++++
 arch/arm64/boot/dts/mediatek/mt8192-asurada.dtsi      |  4 +---
 2 files changed, 12 insertions(+), 3 deletions(-)

Comments

Matthias Brugger Sept. 13, 2024, 11:33 a.m. UTC | #1
On 12/09/2024 17:44, Pin-yen Lin wrote:
> Some spherion variants use Synaptics trackpad at address 0x2c in the
> I2C2 bus with the generic HID-over-i2c driver, and this cannot be
> distinguished from the firmware compatible string.
> 
> Support both trackpads in the same devicetree by moving the trackpad
> pinctrl property to i2c2 and adding the node for Synaptics trackpad.
> 
> Signed-off-by: Pin-yen Lin <treapking@chromium.org>

Reviewed-by: Matthias Brugger <matthias.bgg@gmail.com>

> ---
> 
>   .../boot/dts/mediatek/mt8192-asurada-spherion-r0.dts  | 11 +++++++++++
>   arch/arm64/boot/dts/mediatek/mt8192-asurada.dtsi      |  4 +---
>   2 files changed, 12 insertions(+), 3 deletions(-)
> 
> diff --git a/arch/arm64/boot/dts/mediatek/mt8192-asurada-spherion-r0.dts b/arch/arm64/boot/dts/mediatek/mt8192-asurada-spherion-r0.dts
> index 29aa87e93888..8c485c3ced2c 100644
> --- a/arch/arm64/boot/dts/mediatek/mt8192-asurada-spherion-r0.dts
> +++ b/arch/arm64/boot/dts/mediatek/mt8192-asurada-spherion-r0.dts
> @@ -79,3 +79,14 @@ headset-codec {
>   &touchscreen {
>   	compatible = "elan,ekth3500";
>   };
> +
> +&i2c2 {
> +	/* synaptics touchpad */
> +	trackpad@2c {
> +		compatible = "hid-over-i2c";
> +		reg = <0x2c>;
> +		hid-descr-addr = <0x20>;
> +		interrupts-extended = <&pio 15 IRQ_TYPE_LEVEL_LOW>;
> +		wakeup-source;
> +	};
> +};
> diff --git a/arch/arm64/boot/dts/mediatek/mt8192-asurada.dtsi b/arch/arm64/boot/dts/mediatek/mt8192-asurada.dtsi
> index 08d71ddf3668..8dda8b63765b 100644
> --- a/arch/arm64/boot/dts/mediatek/mt8192-asurada.dtsi
> +++ b/arch/arm64/boot/dts/mediatek/mt8192-asurada.dtsi
> @@ -335,14 +335,12 @@ &i2c2 {
>   	clock-frequency = <400000>;
>   	clock-stretch-ns = <12600>;
>   	pinctrl-names = "default";
> -	pinctrl-0 = <&i2c2_pins>;
> +	pinctrl-0 = <&i2c2_pins>, <&trackpad_pins>;
>   
>   	trackpad@15 {
>   		compatible = "elan,ekth3000";
>   		reg = <0x15>;
>   		interrupts-extended = <&pio 15 IRQ_TYPE_LEVEL_LOW>;
> -		pinctrl-names = "default";
> -		pinctrl-0 = <&trackpad_pins>;
>   		vcc-supply = <&pp3300_u>;
>   		wakeup-source;
>   	};
AngeloGioacchino Del Regno Oct. 2, 2024, 9:33 a.m. UTC | #2
On Thu, 12 Sep 2024 23:44:29 +0800, Pin-yen Lin wrote:
> Some spherion variants use Synaptics trackpad at address 0x2c in the
> I2C2 bus with the generic HID-over-i2c driver, and this cannot be
> distinguished from the firmware compatible string.
> 
> Support both trackpads in the same devicetree by moving the trackpad
> pinctrl property to i2c2 and adding the node for Synaptics trackpad.
> 
> [...]

Applied to v6.12-next/dts64, thanks!

[1/1] arm64: dts: mt8192-asurada-spherion: Add Synaptics trackpad support
      https://git.kernel.org/mediatek/c/925ebc0c

Cheers,
Angelo
diff mbox series

Patch

diff --git a/arch/arm64/boot/dts/mediatek/mt8192-asurada-spherion-r0.dts b/arch/arm64/boot/dts/mediatek/mt8192-asurada-spherion-r0.dts
index 29aa87e93888..8c485c3ced2c 100644
--- a/arch/arm64/boot/dts/mediatek/mt8192-asurada-spherion-r0.dts
+++ b/arch/arm64/boot/dts/mediatek/mt8192-asurada-spherion-r0.dts
@@ -79,3 +79,14 @@  headset-codec {
 &touchscreen {
 	compatible = "elan,ekth3500";
 };
+
+&i2c2 {
+	/* synaptics touchpad */
+	trackpad@2c {
+		compatible = "hid-over-i2c";
+		reg = <0x2c>;
+		hid-descr-addr = <0x20>;
+		interrupts-extended = <&pio 15 IRQ_TYPE_LEVEL_LOW>;
+		wakeup-source;
+	};
+};
diff --git a/arch/arm64/boot/dts/mediatek/mt8192-asurada.dtsi b/arch/arm64/boot/dts/mediatek/mt8192-asurada.dtsi
index 08d71ddf3668..8dda8b63765b 100644
--- a/arch/arm64/boot/dts/mediatek/mt8192-asurada.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8192-asurada.dtsi
@@ -335,14 +335,12 @@  &i2c2 {
 	clock-frequency = <400000>;
 	clock-stretch-ns = <12600>;
 	pinctrl-names = "default";
-	pinctrl-0 = <&i2c2_pins>;
+	pinctrl-0 = <&i2c2_pins>, <&trackpad_pins>;
 
 	trackpad@15 {
 		compatible = "elan,ekth3000";
 		reg = <0x15>;
 		interrupts-extended = <&pio 15 IRQ_TYPE_LEVEL_LOW>;
-		pinctrl-names = "default";
-		pinctrl-0 = <&trackpad_pins>;
 		vcc-supply = <&pp3300_u>;
 		wakeup-source;
 	};