ARM: dts: msm: Enable raydium touch driver node

Enable raydium touch driver node and add its documentation
for bring-up.

Change-Id: I00a2d137d452959a555b13f38f971ce08d9173a8
Signed-off-by: Akshay Gola <quic_agola@quicinc.com>
This commit is contained in:
Akshay Gola
2024-06-28 17:23:23 +05:30
parent 2e80498372
commit 81c3937e65
2 changed files with 120 additions and 0 deletions

View File

@@ -0,0 +1,80 @@
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/input/touchscreen/raydium_ts.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Raydium WT030 touch controller
description: The Raydium Touch controller is connected to
the host processor via I2C. The controller generates
interrupts when the user touches the panel. The host
controller is expected to read the touch coordinates over
I2C and pass the coordinates to the rest of the system.
maintainers:
- Akshay Gola <quic_agola@quicinc.com>
allOf:
- $ref: touchscreen.yaml#
properties:
compatible:
enum:
- raydium,raydium-ts
reg:
description: i2c slave address of the device.
interrupt-parent:
description: parent of interrupt.
raydium,reset-gpio:
description: reset gpio
raydium,irq-gpio:
description: irq gpio
vdd_ana-supply:
description: digital voltage power supply needed to power device.
vcc_i2c-supply:
description: i2c voltage power supply needed to power device.
unevaluatedProperties: false
required:
- compatible
- reg
- interrupt-parent
- raydium,irq-gpio
- raydium,reset-gpio
- vdd_ana-supply
- vcc_i2c-supply
examples:
- |
i2c@78b7000 {
status = "ok";
raydium_ts@39 {
compatible = "raydium,raydium-ts";
reg = <0x39>;
interrupt-parent = <&msm_gpio>;
interrupts = <13 0x2008>;
vdd_ana-supply = <&pm8916_l17>;
vcc_i2c-supply = <&pm8916_l6>;
pinctrl-names ="pmx_ts_active","pmx_ts_suspend","pmx_ts_release";
pinctrl-0 = <&ts_int_active &ts_reset_active>;
pinctrl-1 = <&ts_int_suspend &ts_reset_suspend>;
pinctrl-2 = <&ts_release>;
raydium,reset-gpio = <&msm_gpio 12 0x00>;
raydium,irq-gpio = <&msm_gpio 13 0x00>;
raydium,num-max-touches = <2>;
raydium,soft-reset-delay-ms = <50>;
raydium,hard-reset-delay-ms = <100>;
raydium,x_max = <390>;
raydium,y_max = <390>;
raydium,display-coords= <0 0 390 390>;
raydium,fw_id = <0x2202>
};
};

View File

@@ -6,3 +6,43 @@
#include "monaco-idp-v1.dtsi" #include "monaco-idp-v1.dtsi"
#include "monaco-thermal-wdp.dtsi" #include "monaco-thermal-wdp.dtsi"
&qupv3_se1_i2c {
status = "ok";
tsc@24 {
compatible = "parade,pt_i2c_adapter";
reg = <0x24>;
status = "disabled";
};
raydium_ts@39 {
compatible = "raydium,raydium-ts";
reg = <0x39>;
status = "ok";
interrupt-parent = <&tlmm>;
interrupts = <13 0x2008>;
vdd_ana-supply = <&L29A>;
vcc_i2c-supply = <&L21A>;
pinctrl-names = "pmx_ts_active","pmx_ts_suspend","pmx_ts_release";
pinctrl-0 = <&ts_int_active &ts_reset_active>;
pinctrl-1 = <&ts_int_suspend &ts_reset_suspend>;
pinctrl-2 = <&ts_release>;
raydium,reset-gpio = <&tlmm 12 0x00>;
raydium,irq-gpio = <&tlmm 13 0x00>;
raydium,num-max-touches = <2>;
raydium,soft-reset-delay-ms = <50>;
raydium,hard-reset-delay-ms = <100>;
raydium,x_max = <320>;
raydium,y_max = <360>;
raydium,display-coords= <0 0 320 360>;
};
};