diff mbox series

[2/7] arm64: dts: qcom: msm8998-xperia: Add RMI4 touchscreen support

Message ID 20210903180924.1006044-2-angelogioacchino.delregno@somainline.org
State Superseded
Headers show
Series [1/7] arm64: dts: qcom: Introduce support for MSM8998 Sony Yoshino platform | expand

Commit Message

AngeloGioacchino Del Regno Sept. 3, 2021, 6:09 p.m. UTC
All of the devices in the Sony Yoshino platform are using a Synaptics
RMI4-compatible touch IC with identical pins and supplies: enable the
I2C-5 bus and add the rmi4-i2c node along with the required pin
configurations.

Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@somainline.org>
Reviewed-by: Marijn Suijten <marijn.suijten@somainline.org>
---
 .../dts/qcom/msm8998-sony-xperia-yoshino.dtsi | 60 +++++++++++++++++++
 1 file changed, 60 insertions(+)

Comments

AngeloGioacchino Del Regno Sept. 9, 2021, 11:25 a.m. UTC | #1
Il 07/09/21 15:41, Bjorn Andersson ha scritto:
> On Fri 03 Sep 11:09 PDT 2021, AngeloGioacchino Del Regno wrote:

> 

>> All of the devices in the Sony Yoshino platform are using a Synaptics

>> RMI4-compatible touch IC with identical pins and supplies: enable the

>> I2C-5 bus and add the rmi4-i2c node along with the required pin

>> configurations.

>>

>> Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@somainline.org>

>> Reviewed-by: Marijn Suijten <marijn.suijten@somainline.org>

>> ---

>>   .../dts/qcom/msm8998-sony-xperia-yoshino.dtsi | 60 +++++++++++++++++++

>>   1 file changed, 60 insertions(+)

>>

>> diff --git a/arch/arm64/boot/dts/qcom/msm8998-sony-xperia-yoshino.dtsi b/arch/arm64/boot/dts/qcom/msm8998-sony-xperia-yoshino.dtsi

>> index b07cbc759807..2fe53e4675d5 100644

>> --- a/arch/arm64/boot/dts/qcom/msm8998-sony-xperia-yoshino.dtsi

>> +++ b/arch/arm64/boot/dts/qcom/msm8998-sony-xperia-yoshino.dtsi

>> @@ -30,6 +30,15 @@ board_vbat: vbat-regulator {

>>   		regulator-boot-on;

>>   	};

>>   

>> +	touch_vddio_vreg: touch-vddio-vreg {

>> +		compatible = "regulator-fixed";

>> +		regulator-name = "touch_vddio_vreg";

>> +		startup-delay-us = <10000>;

>> +		gpio = <&tlmm 133 GPIO_ACTIVE_HIGH>;

>> +		pinctrl-names = "default";

>> +		pinctrl-0 = <&ts_vddio_en>;

>> +	};

>> +

>>   	vph_pwr: vph-pwr-regulator {

>>   		compatible = "regulator-fixed";

>>   		regulator-name = "vph_pwr";

>> @@ -134,6 +143,42 @@ ramoops@ffc00000 {

>>   	};

>>   };

>>   

>> +&blsp1_i2c5 {

>> +	status = "okay";

>> +	clock-frequency = <355000>;

>> +

>> +	touchscreen: synaptics-rmi4-i2c@2c {

> 

> "touchscreen" sounds like a better "generic name" for the node.

> 

> Haven't checked the following patches yet, do you need the label?

> 


Thank you, I forgot to remove the label after a cleanup.
Also, node name changed.

Cheers,
- Angelo

> Regards,

> Bjorn

> 

>> +		compatible = "syna,rmi4-i2c";

>> +		reg = <0x2c>;

>> +		#address-cells = <1>;

>> +		#size-cells = <0>;

>> +		interrupts-extended = <&tlmm 125 IRQ_TYPE_EDGE_FALLING>;

>> +

>> +		pinctrl-names = "default";

>> +		pinctrl-0 = <&ts_int_n>;

>> +

>> +		vdd-supply = <&vreg_l28_3p0>;

>> +		vio-supply = <&touch_vddio_vreg>;

>> +

>> +		syna,reset-delay-ms = <220>;

>> +		syna,startup-delay-ms = <1000>;

>> +

>> +		rmi4-f01@1 {

>> +			reg = <0x01>;

>> +			syna,nosleep-mode = <1>;

>> +		};

>> +

>> +		rmi4-f11@11 {

>> +			reg = <0x11>;

>> +			syna,sensor-type = <1>;

>> +		};

>> +	};

>> +};

>> +

>> +&blsp1_i2c5_sleep {

>> +	bias-disable;

>> +};

>> +

>>   &blsp2_uart1 {

>>   	status = "okay";

>>   };

>> @@ -448,6 +493,21 @@ hall_sensor0_default: acc-cover-open {

>>   		drive-strength = <2>;

>>   		input-enable;

>>   	};

>> +

>> +	ts_int_n: ts-int-n {

>> +		pins = "gpio125";

>> +		function = "gpio";

>> +		drive-strength = <8>;

>> +		bias-pull-up;

>> +	};

>> +

>> +	ts_vddio_en: ts-vddio-en-default {

>> +		pins = "gpio133";

>> +		function = "gpio";

>> +		bias-disable;

>> +		drive-strength = <2>;

>> +		output-low;

>> +	};

>>   };

>>   

>>   /*

>> -- 

>> 2.32.0

>>
diff mbox series

Patch

diff --git a/arch/arm64/boot/dts/qcom/msm8998-sony-xperia-yoshino.dtsi b/arch/arm64/boot/dts/qcom/msm8998-sony-xperia-yoshino.dtsi
index b07cbc759807..2fe53e4675d5 100644
--- a/arch/arm64/boot/dts/qcom/msm8998-sony-xperia-yoshino.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8998-sony-xperia-yoshino.dtsi
@@ -30,6 +30,15 @@  board_vbat: vbat-regulator {
 		regulator-boot-on;
 	};
 
+	touch_vddio_vreg: touch-vddio-vreg {
+		compatible = "regulator-fixed";
+		regulator-name = "touch_vddio_vreg";
+		startup-delay-us = <10000>;
+		gpio = <&tlmm 133 GPIO_ACTIVE_HIGH>;
+		pinctrl-names = "default";
+		pinctrl-0 = <&ts_vddio_en>;
+	};
+
 	vph_pwr: vph-pwr-regulator {
 		compatible = "regulator-fixed";
 		regulator-name = "vph_pwr";
@@ -134,6 +143,42 @@  ramoops@ffc00000 {
 	};
 };
 
+&blsp1_i2c5 {
+	status = "okay";
+	clock-frequency = <355000>;
+
+	touchscreen: synaptics-rmi4-i2c@2c {
+		compatible = "syna,rmi4-i2c";
+		reg = <0x2c>;
+		#address-cells = <1>;
+		#size-cells = <0>;
+		interrupts-extended = <&tlmm 125 IRQ_TYPE_EDGE_FALLING>;
+
+		pinctrl-names = "default";
+		pinctrl-0 = <&ts_int_n>;
+
+		vdd-supply = <&vreg_l28_3p0>;
+		vio-supply = <&touch_vddio_vreg>;
+
+		syna,reset-delay-ms = <220>;
+		syna,startup-delay-ms = <1000>;
+
+		rmi4-f01@1 {
+			reg = <0x01>;
+			syna,nosleep-mode = <1>;
+		};
+
+		rmi4-f11@11 {
+			reg = <0x11>;
+			syna,sensor-type = <1>;
+		};
+	};
+};
+
+&blsp1_i2c5_sleep {
+	bias-disable;
+};
+
 &blsp2_uart1 {
 	status = "okay";
 };
@@ -448,6 +493,21 @@  hall_sensor0_default: acc-cover-open {
 		drive-strength = <2>;
 		input-enable;
 	};
+
+	ts_int_n: ts-int-n {
+		pins = "gpio125";
+		function = "gpio";
+		drive-strength = <8>;
+		bias-pull-up;
+	};
+
+	ts_vddio_en: ts-vddio-en-default {
+		pins = "gpio133";
+		function = "gpio";
+		bias-disable;
+		drive-strength = <2>;
+		output-low;
+	};
 };
 
 /*