diff mbox series

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

Message ID 20210903180924.1006044-2-angelogioacchino.delregno@somainline.org (mailing list archive)
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

Bjorn Andersson Sept. 7, 2021, 1:41 p.m. UTC | #1
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?

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
>
AngeloGioacchino Del Regno Sept. 9, 2021, 11:25 a.m. UTC | #2
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;
+	};
 };
 
 /*