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
7title: Goodix GT7375P touchscreen
8
9maintainers:
10  - Douglas Anderson <dianders@chromium.org>
11
12description:
13  Supports the Goodix GT7375P touchscreen.
14  This touchscreen uses the i2c-hid protocol but has some non-standard
15  power sequencing required.
16
17allOf:
18  - $ref: /schemas/input/touchscreen/touchscreen.yaml#
19
20properties:
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
60required:
61  - compatible
62  - reg
63  - interrupts
64  - reset-gpios
65  - vdd-supply
66
67additionalProperties: false
68
69examples:
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    };
90