xref: /freebsd/sys/contrib/device-tree/Bindings/input/touchscreen/zinitix,bt400.yaml (revision b2d2a78ad80ec68d4a17f5aef97d21686cb1e29b)
1e67e8565SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2e67e8565SEmmanuel Vadot%YAML 1.2
3e67e8565SEmmanuel Vadot---
4e67e8565SEmmanuel Vadot$id: http://devicetree.org/schemas/input/touchscreen/zinitix,bt400.yaml#
5e67e8565SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6e67e8565SEmmanuel Vadot
78bab661aSEmmanuel Vadottitle: Zinitix BT4xx and BT5xx series touchscreen controller
8e67e8565SEmmanuel Vadot
9e67e8565SEmmanuel Vadotdescription: The Zinitix BT4xx and BT5xx series of touchscreen controllers
10e67e8565SEmmanuel Vadot  are Korea-produced touchscreens with embedded microcontrollers. The
11e67e8565SEmmanuel Vadot  BT4xx series was produced 2010-2013 and the BT5xx series 2013-2014.
12e67e8565SEmmanuel Vadot
13e67e8565SEmmanuel Vadotmaintainers:
14e67e8565SEmmanuel Vadot  - Michael Srba <Michael.Srba@seznam.cz>
15e67e8565SEmmanuel Vadot  - Linus Walleij <linus.walleij@linaro.org>
16e67e8565SEmmanuel Vadot
17e67e8565SEmmanuel VadotallOf:
18e67e8565SEmmanuel Vadot  - $ref: touchscreen.yaml#
19*b2d2a78aSEmmanuel Vadot  - $ref: ../input.yaml#
20e67e8565SEmmanuel Vadot
21e67e8565SEmmanuel Vadotproperties:
22e67e8565SEmmanuel Vadot  $nodename:
23e67e8565SEmmanuel Vadot    pattern: "^touchscreen(@.*)?$"
24e67e8565SEmmanuel Vadot
25e67e8565SEmmanuel Vadot  compatible:
26e67e8565SEmmanuel Vadot    enum:
27e67e8565SEmmanuel Vadot      - zinitix,bt402
28e67e8565SEmmanuel Vadot      - zinitix,bt403
29e67e8565SEmmanuel Vadot      - zinitix,bt404
30e67e8565SEmmanuel Vadot      - zinitix,bt412
31e67e8565SEmmanuel Vadot      - zinitix,bt413
32e67e8565SEmmanuel Vadot      - zinitix,bt431
33e67e8565SEmmanuel Vadot      - zinitix,bt432
34e67e8565SEmmanuel Vadot      - zinitix,bt531
35e67e8565SEmmanuel Vadot      - zinitix,bt532
36e67e8565SEmmanuel Vadot      - zinitix,bt538
37e67e8565SEmmanuel Vadot      - zinitix,bt541
38e67e8565SEmmanuel Vadot      - zinitix,bt548
39e67e8565SEmmanuel Vadot      - zinitix,bt554
40e67e8565SEmmanuel Vadot      - zinitix,at100
41e67e8565SEmmanuel Vadot
42e67e8565SEmmanuel Vadot  reg:
43e67e8565SEmmanuel Vadot    description: I2C address on the I2C bus
44e67e8565SEmmanuel Vadot
45e67e8565SEmmanuel Vadot  clock-frequency:
46e67e8565SEmmanuel Vadot    description: I2C client clock frequency, defined for host when using
47e67e8565SEmmanuel Vadot      the device on the I2C bus
48e67e8565SEmmanuel Vadot    minimum: 0
49e67e8565SEmmanuel Vadot    maximum: 400000
50e67e8565SEmmanuel Vadot
51e67e8565SEmmanuel Vadot  interrupts:
52e67e8565SEmmanuel Vadot    description: Interrupt to host
53e67e8565SEmmanuel Vadot    maxItems: 1
54e67e8565SEmmanuel Vadot
55e67e8565SEmmanuel Vadot  vcca-supply:
56e67e8565SEmmanuel Vadot    description: Analog power supply regulator on the VCCA pin
57e67e8565SEmmanuel Vadot
58e67e8565SEmmanuel Vadot  vdd-supply:
59e67e8565SEmmanuel Vadot    description: Digital power supply regulator on the VDD pin.
60e67e8565SEmmanuel Vadot      In older device trees this can be the accidental name for the analog
61e67e8565SEmmanuel Vadot      supply on the VCCA pin, and in that case the deprecated vddo-supply is
62e67e8565SEmmanuel Vadot      used for the digital power supply.
63e67e8565SEmmanuel Vadot
64e67e8565SEmmanuel Vadot  vddo-supply:
65e67e8565SEmmanuel Vadot    description: Deprecated name for the digital power supply, use vdd-supply
66e67e8565SEmmanuel Vadot      as this reflects the real name of the pin. If this supply is present,
67e67e8565SEmmanuel Vadot      the vdd-supply represents VCCA instead of VDD. Implementers should first
68e67e8565SEmmanuel Vadot      check for this property, and if it is present assume that the vdd-supply
69e67e8565SEmmanuel Vadot      represents the analog supply.
70e67e8565SEmmanuel Vadot    deprecated: true
71e67e8565SEmmanuel Vadot
72e67e8565SEmmanuel Vadot  reset-gpios:
73e67e8565SEmmanuel Vadot    description: Reset line for the touchscreen, should be tagged
74e67e8565SEmmanuel Vadot      as GPIO_ACTIVE_LOW
75e67e8565SEmmanuel Vadot
76e67e8565SEmmanuel Vadot  zinitix,mode:
77e67e8565SEmmanuel Vadot    description: Mode of reporting touch points. Some modes may not work
78e67e8565SEmmanuel Vadot      with a particular ts firmware for unknown reasons. Available modes are
79e67e8565SEmmanuel Vadot      1 and 2. Mode 2 is the default and preferred.
80e67e8565SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
81e67e8565SEmmanuel Vadot    enum: [1, 2]
82e67e8565SEmmanuel Vadot
83*b2d2a78aSEmmanuel Vadot  linux,keycodes:
84*b2d2a78aSEmmanuel Vadot    description:
85*b2d2a78aSEmmanuel Vadot      This property specifies an array of keycodes assigned to the
86*b2d2a78aSEmmanuel Vadot      touch-keys that can be present in some touchscreen configurations.
87*b2d2a78aSEmmanuel Vadot      If the touch-keys are enabled, controller firmware will assign some
88*b2d2a78aSEmmanuel Vadot      touch sense lines to those keys.
89*b2d2a78aSEmmanuel Vadot    minItems: 1
90*b2d2a78aSEmmanuel Vadot    maxItems: 8
91*b2d2a78aSEmmanuel Vadot
92e67e8565SEmmanuel Vadot  touchscreen-size-x: true
93e67e8565SEmmanuel Vadot  touchscreen-size-y: true
94e67e8565SEmmanuel Vadot  touchscreen-fuzz-x: true
95e67e8565SEmmanuel Vadot  touchscreen-fuzz-y: true
96e67e8565SEmmanuel Vadot
97e67e8565SEmmanuel VadotadditionalProperties: false
98e67e8565SEmmanuel Vadot
99e67e8565SEmmanuel Vadotrequired:
100e67e8565SEmmanuel Vadot  - compatible
101e67e8565SEmmanuel Vadot  - reg
102e67e8565SEmmanuel Vadot  - interrupts
103e67e8565SEmmanuel Vadot  - touchscreen-size-x
104e67e8565SEmmanuel Vadot  - touchscreen-size-y
105e67e8565SEmmanuel Vadot
106e67e8565SEmmanuel Vadotexamples:
107e67e8565SEmmanuel Vadot  - |
108e67e8565SEmmanuel Vadot    #include <dt-bindings/interrupt-controller/irq.h>
109e67e8565SEmmanuel Vadot    #include <dt-bindings/gpio/gpio.h>
110e67e8565SEmmanuel Vadot    i2c {
111e67e8565SEmmanuel Vadot      #address-cells = <1>;
112e67e8565SEmmanuel Vadot      #size-cells = <0>;
113e67e8565SEmmanuel Vadot
114e67e8565SEmmanuel Vadot      touchscreen@20 {
115e67e8565SEmmanuel Vadot        compatible = "zinitix,bt541";
116e67e8565SEmmanuel Vadot        reg = <0x20>;
117e67e8565SEmmanuel Vadot        interrupt-parent = <&gpio>;
118e67e8565SEmmanuel Vadot        interrupts = <13 IRQ_TYPE_EDGE_FALLING>;
119e67e8565SEmmanuel Vadot        vcca-supply = <&reg_vcca_tsp>;
120e67e8565SEmmanuel Vadot        vdd-supply = <&reg_vdd_tsp>;
121e67e8565SEmmanuel Vadot        touchscreen-size-x = <540>;
122e67e8565SEmmanuel Vadot        touchscreen-size-y = <960>;
123e67e8565SEmmanuel Vadot        zinitix,mode = <2>;
124e67e8565SEmmanuel Vadot      };
125e67e8565SEmmanuel Vadot    };
126