[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <865aa172-72b8-68c0-ee15-e0e638493e33@linaro.org>
Date: Fri, 30 Sep 2022 22:12:20 +0200
From: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
To: Konrad Dybcio <konrad.dybcio@...ainline.org>,
~postmarketos/upstreaming@...ts.sr.ht
Cc: martin.botka@...ainline.org,
angelogioacchino.delregno@...ainline.org,
marijn.suijten@...ainline.org, jamipkettunen@...ainline.org,
Andy Gross <agross@...nel.org>,
Bjorn Andersson <andersson@...nel.org>,
Rob Herring <robh+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
linux-arm-msm@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 2/8] arm64: dts: qcom: sdm845-tama: Add Synaptics
Touchscreen
On 30/09/2022 21:10, Konrad Dybcio wrote:
> Add required pins and RMI4 node to the common DT and remove it
> from Akatsuki, as it uses a different touch.
>
> Since the panels are super high tech proprietary incell, they
> need to be handled with very precise timings. As such the panel
> driver sets up the power rails and GPIOs and the touchscreen
> driver *has to* probe afterwards.
>
Thank you for your patch. There is something to discuss/improve.
> Signed-off-by: Konrad Dybcio <konrad.dybcio@...ainline.org>
> ---
> .../qcom/sdm845-sony-xperia-tama-akatsuki.dts | 3 +
> .../dts/qcom/sdm845-sony-xperia-tama.dtsi | 69 ++++++++++++++++++-
> 2 files changed, 70 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/qcom/sdm845-sony-xperia-tama-akatsuki.dts b/arch/arm64/boot/dts/qcom/sdm845-sony-xperia-tama-akatsuki.dts
> index 2a16305ac5da..5c5949a51184 100644
> --- a/arch/arm64/boot/dts/qcom/sdm845-sony-xperia-tama-akatsuki.dts
> +++ b/arch/arm64/boot/dts/qcom/sdm845-sony-xperia-tama-akatsuki.dts
> @@ -7,6 +7,9 @@
>
> #include "sdm845-sony-xperia-tama.dtsi"
>
> +/* XZ3 uses an Atmel touchscreen instead. */
> +/delete-node/ &touchscreen;
> +
> / {
> model = "Sony Xperia XZ3";
> compatible = "sony,akatsuki-row", "qcom,sdm845";
> diff --git a/arch/arm64/boot/dts/qcom/sdm845-sony-xperia-tama.dtsi b/arch/arm64/boot/dts/qcom/sdm845-sony-xperia-tama.dtsi
> index ac8eb59ed010..809a6d7e739b 100644
> --- a/arch/arm64/boot/dts/qcom/sdm845-sony-xperia-tama.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sdm845-sony-xperia-tama.dtsi
> @@ -375,10 +375,43 @@ &gcc {
> };
>
> &i2c5 {
> - status = "okay";
> clock-frequency = <400000>;
> + status = "okay";
> +
> + touchscreen: touchscreen@2c {
> + compatible = "syna,rmi4-i2c";
> + reg = <0x2c>;
> +
> + interrupt-parent = <&tlmm>;
> + interrupts = <125 IRQ_TYPE_EDGE_FALLING>;
> + vdd-supply = <&vreg_l14a_1p8>;
> + /*
> + * This is a blatant abuse of OF, but the panel driver *needs*
> + * to probe first, as the power/gpio switching needs to be precisely
> + * timed in order for both the display and touch panel to function properly.
> + */
> + incell-supply = <&panel>;
> +
> + syna,reset-delay-ms = <220>;
> + syna,startup-delay-ms = <1000>;
> +
> + pinctrl-names = "default", "sleep";
> + pinctrl-0 = <&ts_default>;
> + pinctrl-1 = <&ts_sleep>;
>
> - /* Synaptics touchscreen @ 2c, 3c */
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + rmi4-f01@1 {
> + reg = <0x01>;
> + syna,nosleep-mode = <1>;
> + };
> +
> + rmi4-f12@12 {
> + reg = <0x12>;
> + syna,sensor-type = <1>;
> + };
> + };
> };
>
> &i2c10 {
> @@ -497,6 +530,38 @@ sde_te_active_sleep: sde-te-active-sleep-state {
> drive-strength = <2>;
> bias-pull-down;
> };
> +
> + ts_default: ts-default-state {
> + reset-pin {
"-pins" suffix, so "reset-pins" here and further.
Best regards,
Krzysztof
Powered by blists - more mailing lists