GNU Linux-libre 6.8.9-gnu
[releases.git] / Documentation / devicetree / bindings / input / goodix,gt7375p.yaml
1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/input/goodix,gt7375p.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Goodix GT7375P touchscreen
8
9 maintainers:
10   - Douglas Anderson <dianders@chromium.org>
11
12 description:
13   Supports the Goodix GT7375P touchscreen.
14   This touchscreen uses the i2c-hid protocol but has some non-standard
15   power sequencing required.
16
17 allOf:
18   - $ref: /schemas/input/touchscreen/touchscreen.yaml#
19
20 properties:
21   compatible:
22     oneOf:
23       - const: goodix,gt7375p
24       - items:
25           - const: goodix,gt7986u
26           - const: goodix,gt7375p
27
28   reg:
29     enum:
30       - 0x5d
31       - 0x14
32
33   interrupts:
34     maxItems: 1
35
36   panel: true
37
38   reset-gpios:
39     true
40
41   vdd-supply:
42     description: The 3.3V supply to the touchscreen.
43
44   mainboard-vddio-supply:
45     description:
46       The supply on the main board needed to power up IO signals going
47       to the touchscreen. This supply need not go to the touchscreen
48       itself as long as it allows the main board to make signals compatible
49       with what the touchscreen is expecting for its IO rails.
50
51   goodix,no-reset-during-suspend:
52     description:
53       Set this to true to enforce the driver to not assert the reset GPIO
54       during suspend.
55       Due to potential touchscreen hardware flaw, back-powering could happen in
56       suspend if the power supply is on and with active-low reset GPIO asserted.
57       This property is used to avoid the back-powering issue.
58     type: boolean
59
60 required:
61   - compatible
62   - reg
63   - interrupts
64   - reset-gpios
65   - vdd-supply
66
67 additionalProperties: false
68
69 examples:
70   - |
71     #include <dt-bindings/clock/qcom,rpmh.h>
72     #include <dt-bindings/gpio/gpio.h>
73     #include <dt-bindings/interrupt-controller/irq.h>
74
75     i2c {
76       #address-cells = <1>;
77       #size-cells = <0>;
78
79       ap_ts: touchscreen@5d {
80         compatible = "goodix,gt7375p";
81         reg = <0x5d>;
82
83         interrupt-parent = <&tlmm>;
84         interrupts = <9 IRQ_TYPE_LEVEL_LOW>;
85
86         reset-gpios = <&tlmm 8 GPIO_ACTIVE_LOW>;
87         vdd-supply = <&pp3300_ts>;
88       };
89     };