dt-bindings: Add devicetree bindings
Add snapshot of device tree bindings from keystone common kernel, branch "android-mainline-keystone-qcom-release" at c4c12103f9c0 ("Snap for 9228065 from e32903b9a63bb558df8b803b076619c53c16baad to android-mainline-keystone-qcom-release"). Change-Id: I7682079615cbd9f29340a5c1f2a1d84ec441a1f1 Signed-off-by: Melody Olvera <quic_molvera@quicinc.com>
This commit is contained in:
71
bindings/input/touchscreen/ad7879.txt
Normal file
71
bindings/input/touchscreen/ad7879.txt
Normal file
@@ -0,0 +1,71 @@
|
||||
* Analog Devices AD7879(-1)/AD7889(-1) touchscreen interface (SPI/I2C)
|
||||
|
||||
Required properties:
|
||||
- compatible : for SPI slave, use "adi,ad7879"
|
||||
for I2C slave, use "adi,ad7879-1"
|
||||
- reg : SPI chipselect/I2C slave address
|
||||
See spi-bus.txt for more SPI slave properties
|
||||
- interrupts : touch controller interrupt
|
||||
- touchscreen-max-pressure : maximum reported pressure
|
||||
- adi,resistance-plate-x : total resistance of X-plate (for pressure
|
||||
calculation)
|
||||
Optional properties:
|
||||
- touchscreen-swapped-x-y : X and Y axis are swapped (boolean)
|
||||
- adi,first-conversion-delay : 0-12: In 128us steps (starting with 128us)
|
||||
13 : 2.560ms
|
||||
14 : 3.584ms
|
||||
15 : 4.096ms
|
||||
This property has to be a '/bits/ 8' value
|
||||
- adi,acquisition-time : 0: 2us
|
||||
1: 4us
|
||||
2: 8us
|
||||
3: 16us
|
||||
This property has to be a '/bits/ 8' value
|
||||
- adi,median-filter-size : 0: disabled
|
||||
1: 4 measurements
|
||||
2: 8 measurements
|
||||
3: 16 measurements
|
||||
This property has to be a '/bits/ 8' value
|
||||
- adi,averaging : 0: 2 middle values (1 if median disabled)
|
||||
1: 4 middle values
|
||||
2: 8 middle values
|
||||
3: 16 values
|
||||
This property has to be a '/bits/ 8' value
|
||||
- adi,conversion-interval: : 0 : convert one time only
|
||||
1-255: 515us + val * 35us (up to 9.440ms)
|
||||
This property has to be a '/bits/ 8' value
|
||||
- gpio-controller : Switch AUX/VBAT/GPIO pin to GPIO mode
|
||||
|
||||
Example:
|
||||
|
||||
touchscreen0@2c {
|
||||
compatible = "adi,ad7879-1";
|
||||
reg = <0x2c>;
|
||||
interrupt-parent = <&gpio1>;
|
||||
interrupts = <13 IRQ_TYPE_EDGE_FALLING>;
|
||||
touchscreen-max-pressure = <4096>;
|
||||
adi,resistance-plate-x = <120>;
|
||||
adi,first-conversion-delay = /bits/ 8 <3>;
|
||||
adi,acquisition-time = /bits/ 8 <1>;
|
||||
adi,median-filter-size = /bits/ 8 <2>;
|
||||
adi,averaging = /bits/ 8 <1>;
|
||||
adi,conversion-interval = /bits/ 8 <255>;
|
||||
};
|
||||
|
||||
touchscreen1@1 {
|
||||
compatible = "adi,ad7879";
|
||||
spi-max-frequency = <5000000>;
|
||||
reg = <1>;
|
||||
spi-cpol;
|
||||
spi-cpha;
|
||||
gpio-controller;
|
||||
interrupt-parent = <&gpio1>;
|
||||
interrupts = <13 IRQ_TYPE_EDGE_FALLING>;
|
||||
touchscreen-max-pressure = <4096>;
|
||||
adi,resistance-plate-x = <120>;
|
||||
adi,first-conversion-delay = /bits/ 8 <3>;
|
||||
adi,acquisition-time = /bits/ 8 <1>;
|
||||
adi,median-filter-size = /bits/ 8 <2>;
|
||||
adi,averaging = /bits/ 8 <1>;
|
||||
adi,conversion-interval = /bits/ 8 <255>;
|
||||
};
|
106
bindings/input/touchscreen/ads7846.txt
Normal file
106
bindings/input/touchscreen/ads7846.txt
Normal file
@@ -0,0 +1,106 @@
|
||||
Device tree bindings for TI's ADS7843, ADS7845, ADS7846, ADS7873, TSC2046
|
||||
SPI driven touch screen controllers.
|
||||
|
||||
The node for this driver must be a child node of a SPI controller, hence
|
||||
all mandatory properties described in
|
||||
|
||||
Documentation/devicetree/bindings/spi/spi-bus.txt
|
||||
|
||||
must be specified.
|
||||
|
||||
Additional required properties:
|
||||
|
||||
compatible Must be one of the following, depending on the
|
||||
model:
|
||||
"ti,tsc2046"
|
||||
"ti,ads7843"
|
||||
"ti,ads7845"
|
||||
"ti,ads7846"
|
||||
"ti,ads7873"
|
||||
|
||||
interrupts An interrupt node describing the IRQ line the chip's
|
||||
!PENIRQ pin is connected to.
|
||||
vcc-supply A regulator node for the supply voltage.
|
||||
|
||||
|
||||
Optional properties:
|
||||
|
||||
ti,vref-delay-usecs vref supply delay in usecs, 0 for
|
||||
external vref (u16).
|
||||
ti,vref-mv The VREF voltage, in millivolts (u16).
|
||||
Set to 0 to use internal references
|
||||
(ADS7846).
|
||||
ti,keep-vref-on set to keep vref on for differential
|
||||
measurements as well
|
||||
ti,settle-delay-usec Settling time of the analog signals;
|
||||
a function of Vcc and the capacitance
|
||||
on the X/Y drivers. If set to non-zero,
|
||||
two samples are taken with settle_delay
|
||||
us apart, and the second one is used.
|
||||
~150 uSec with 0.01uF caps (u16).
|
||||
ti,penirq-recheck-delay-usecs If set to non-zero, after samples are
|
||||
taken this delay is applied and penirq
|
||||
is rechecked, to help avoid false
|
||||
events. This value is affected by the
|
||||
material used to build the touch layer
|
||||
(u16).
|
||||
ti,x-plate-ohms Resistance of the X-plate,
|
||||
in Ohms (u16).
|
||||
ti,y-plate-ohms Resistance of the Y-plate,
|
||||
in Ohms (u16).
|
||||
ti,x-min Minimum value on the X axis (u16).
|
||||
ti,y-min Minimum value on the Y axis (u16).
|
||||
ti,debounce-tol Tolerance used for filtering (u16).
|
||||
ti,debounce-rep Additional consecutive good readings
|
||||
required after the first two (u16).
|
||||
ti,pendown-gpio-debounce Platform specific debounce time for the
|
||||
pendown-gpio (u32).
|
||||
pendown-gpio GPIO handle describing the pin the !PENIRQ
|
||||
line is connected to.
|
||||
wakeup-source use any event on touchscreen as wakeup event.
|
||||
(Legacy property support: "linux,wakeup")
|
||||
touchscreen-size-x General touchscreen binding, see [1].
|
||||
touchscreen-size-y General touchscreen binding, see [1].
|
||||
touchscreen-max-pressure General touchscreen binding, see [1].
|
||||
touchscreen-min-pressure General touchscreen binding, see [1].
|
||||
touchscreen-average-samples General touchscreen binding, see [1].
|
||||
touchscreen-inverted-x General touchscreen binding, see [1].
|
||||
touchscreen-inverted-y General touchscreen binding, see [1].
|
||||
touchscreen-swapped-x-y General touchscreen binding, see [1].
|
||||
|
||||
[1] All general touchscreen properties are described in
|
||||
Documentation/devicetree/bindings/input/touchscreen/touchscreen.txt.
|
||||
|
||||
Deprecated properties:
|
||||
|
||||
ti,swap-xy swap x and y axis
|
||||
ti,x-max Maximum value on the X axis (u16).
|
||||
ti,y-max Maximum value on the Y axis (u16).
|
||||
ti,pressure-min Minimum reported pressure value
|
||||
(threshold) - u16.
|
||||
ti,pressure-max Maximum reported pressure value (u16).
|
||||
ti,debounce-max Max number of additional readings per
|
||||
sample (u16).
|
||||
|
||||
Example for a TSC2046 chip connected to an McSPI controller of an OMAP SoC::
|
||||
|
||||
spi_controller {
|
||||
tsc2046@0 {
|
||||
reg = <0>; /* CS0 */
|
||||
compatible = "ti,tsc2046";
|
||||
interrupt-parent = <&gpio1>;
|
||||
interrupts = <8 0>; /* BOOT6 / GPIO 8 */
|
||||
spi-max-frequency = <1000000>;
|
||||
pendown-gpio = <&gpio1 8 0>;
|
||||
vcc-supply = <®_vcc3>;
|
||||
|
||||
ti,x-min = /bits/ 16 <0>;
|
||||
ti,x-max = /bits/ 16 <8000>;
|
||||
ti,y-min = /bits/ 16 <0>;
|
||||
ti,y-max = /bits/ 16 <4800>;
|
||||
ti,x-plate-ohms = /bits/ 16 <40>;
|
||||
ti,pressure-max = /bits/ 16 <255>;
|
||||
|
||||
wakeup-source;
|
||||
};
|
||||
};
|
15
bindings/input/touchscreen/ar1021.txt
Normal file
15
bindings/input/touchscreen/ar1021.txt
Normal file
@@ -0,0 +1,15 @@
|
||||
* Microchip AR1020 and AR1021 touchscreen interface (I2C)
|
||||
|
||||
Required properties:
|
||||
- compatible : "microchip,ar1021-i2c"
|
||||
- reg : I2C slave address
|
||||
- interrupts : touch controller interrupt
|
||||
|
||||
Example:
|
||||
|
||||
touchscreen@4d {
|
||||
compatible = "microchip,ar1021-i2c";
|
||||
reg = <0x4d>;
|
||||
interrupt-parent = <&gpio3>;
|
||||
interrupts = <11 IRQ_TYPE_LEVEL_HIGH>;
|
||||
};
|
30
bindings/input/touchscreen/auo_pixcir_ts.txt
Normal file
30
bindings/input/touchscreen/auo_pixcir_ts.txt
Normal file
@@ -0,0 +1,30 @@
|
||||
* AUO in-cell touchscreen controller using Pixcir sensors
|
||||
|
||||
Required properties:
|
||||
- compatible: must be "auo,auo_pixcir_ts"
|
||||
- reg: I2C address of the chip
|
||||
- interrupts: interrupt to which the chip is connected
|
||||
- gpios: gpios the chip is connected to
|
||||
first one is the interrupt gpio and second one the reset gpio
|
||||
- x-size: horizontal resolution of touchscreen
|
||||
- y-size: vertical resolution of touchscreen
|
||||
|
||||
Example:
|
||||
|
||||
i2c@00000000 {
|
||||
/* ... */
|
||||
|
||||
auo_pixcir_ts@5c {
|
||||
compatible = "auo,auo_pixcir_ts";
|
||||
reg = <0x5c>;
|
||||
interrupts = <2 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
||||
gpios = <&gpf 2 0 GPIO_LEVEL_HIGH>, /* INT */
|
||||
<&gpf 5 1 GPIO_LEVEL_LOW>; /* RST */
|
||||
|
||||
x-size = <800>;
|
||||
y-size = <600>;
|
||||
};
|
||||
|
||||
/* ... */
|
||||
};
|
75
bindings/input/touchscreen/azoteq,iqs5xx.yaml
Normal file
75
bindings/input/touchscreen/azoteq,iqs5xx.yaml
Normal file
@@ -0,0 +1,75 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/input/touchscreen/azoteq,iqs5xx.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Azoteq IQS550/572/525 Trackpad/Touchscreen Controller
|
||||
|
||||
maintainers:
|
||||
- Jeff LaBundy <jeff@labundy.com>
|
||||
|
||||
description: |
|
||||
The Azoteq IQS550, IQS572 and IQS525 trackpad and touchscreen controllers
|
||||
employ projected-capacitance sensing and can track up to five independent
|
||||
contacts.
|
||||
|
||||
Link to datasheet: https://www.azoteq.com/
|
||||
|
||||
allOf:
|
||||
- $ref: touchscreen.yaml#
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- azoteq,iqs550
|
||||
- azoteq,iqs572
|
||||
- azoteq,iqs525
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
reset-gpios:
|
||||
maxItems: 1
|
||||
|
||||
wakeup-source: true
|
||||
|
||||
touchscreen-size-x: true
|
||||
touchscreen-size-y: true
|
||||
touchscreen-inverted-x: true
|
||||
touchscreen-inverted-y: true
|
||||
touchscreen-swapped-x-y: true
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- interrupts
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
touchscreen@74 {
|
||||
compatible = "azoteq,iqs550";
|
||||
reg = <0x74>;
|
||||
interrupt-parent = <&gpio>;
|
||||
interrupts = <27 IRQ_TYPE_LEVEL_HIGH>;
|
||||
reset-gpios = <&gpio 22 (GPIO_ACTIVE_LOW |
|
||||
GPIO_PUSH_PULL)>;
|
||||
|
||||
touchscreen-size-x = <800>;
|
||||
touchscreen-size-y = <480>;
|
||||
};
|
||||
};
|
||||
|
||||
...
|
87
bindings/input/touchscreen/brcm,iproc-touchscreen.txt
Normal file
87
bindings/input/touchscreen/brcm,iproc-touchscreen.txt
Normal file
@@ -0,0 +1,87 @@
|
||||
* Broadcom's IPROC Touchscreen Controller
|
||||
|
||||
Required properties:
|
||||
- compatible: must be "brcm,iproc-touchscreen"
|
||||
- ts_syscon: handler of syscon node defining physical base
|
||||
address of the controller and length of memory mapped region.
|
||||
If this property is selected please make sure MFD_SYSCON config
|
||||
is enabled in the defconfig file.
|
||||
- clocks: The clock provided by the SOC to driver the tsc
|
||||
- clock-names: name for the clock
|
||||
- interrupts: The touchscreen controller's interrupt
|
||||
- address-cells: Specify the number of u32 entries needed in child nodes.
|
||||
Should set to 1.
|
||||
- size-cells: Specify number of u32 entries needed to specify child nodes size
|
||||
in reg property. Should set to 1.
|
||||
|
||||
Optional properties:
|
||||
- scanning_period: Time between scans. Each step is 1024 us. Valid 1-256.
|
||||
- debounce_timeout: Each step is 512 us. Valid 0-255
|
||||
- settling_timeout: The settling duration (in ms) is the amount of time
|
||||
the tsc waits to allow the voltage to settle after
|
||||
turning on the drivers in detection mode.
|
||||
Valid values: 0-11
|
||||
0 = 0.008 ms
|
||||
1 = 0.01 ms
|
||||
2 = 0.02 ms
|
||||
3 = 0.04 ms
|
||||
4 = 0.08 ms
|
||||
5 = 0.16 ms
|
||||
6 = 0.32 ms
|
||||
7 = 0.64 ms
|
||||
8 = 1.28 ms
|
||||
9 = 2.56 ms
|
||||
10 = 5.12 ms
|
||||
11 = 10.24 ms
|
||||
- touch_timeout: The continuous number of scan periods in which touch is
|
||||
not detected before the controller returns to idle state.
|
||||
Valid values 0-255.
|
||||
- average_data: Number of data samples which are averaged before a final
|
||||
data point is placed into the FIFO
|
||||
Valid values 0-7
|
||||
0 = 1 sample
|
||||
1 = 2 samples
|
||||
2 = 4 samples
|
||||
3 = 8 samples
|
||||
4 = 16 samples
|
||||
5 = 32 samples
|
||||
6 = 64 samples
|
||||
7 = 128 samples
|
||||
- fifo_threshold: Interrupt is generated whenever the number of fifo
|
||||
entries exceeds this value
|
||||
Valid values 0-31
|
||||
- touchscreen-size-x: horizontal resolution of touchscreen (in pixels)
|
||||
- touchscreen-size-y: vertical resolution of touchscreen (in pixels)
|
||||
- touchscreen-fuzz-x: horizontal noise value of the absolute input
|
||||
device (in pixels)
|
||||
- touchscreen-fuzz-y: vertical noise value of the absolute input
|
||||
device (in pixels)
|
||||
- touchscreen-inverted-x: X axis is inverted (boolean)
|
||||
- touchscreen-inverted-y: Y axis is inverted (boolean)
|
||||
|
||||
Example: An example of touchscreen node
|
||||
|
||||
ts_adc_syscon: ts_adc_syscon@180a6000 {
|
||||
compatible = "brcm,iproc-ts-adc-syscon","syscon";
|
||||
reg = <0x180a6000 0xc30>;
|
||||
};
|
||||
|
||||
touchscreen: touchscreen@180a6000 {
|
||||
compatible = "brcm,iproc-touchscreen";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
ts_syscon = <&ts_adc_syscon>;
|
||||
clocks = <&adc_clk>;
|
||||
clock-names = "tsc_clk";
|
||||
interrupts = <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
||||
scanning_period = <5>;
|
||||
debounce_timeout = <40>;
|
||||
settling_timeout = <7>;
|
||||
touch_timeout = <10>;
|
||||
average_data = <5>;
|
||||
fifo_threshold = <1>;
|
||||
/* Touchscreen is rotated 180 degrees. */
|
||||
touchscreen-inverted-x;
|
||||
touchscreen-inverted-y;
|
||||
};
|
43
bindings/input/touchscreen/bu21013.txt
Normal file
43
bindings/input/touchscreen/bu21013.txt
Normal file
@@ -0,0 +1,43 @@
|
||||
* Rohm BU21013 Touch Screen
|
||||
|
||||
Required properties:
|
||||
- compatible : "rohm,bu21013_tp"
|
||||
- reg : I2C device address
|
||||
- reset-gpios : GPIO pin enabling (selecting) chip (CS)
|
||||
- interrupt-parent : the phandle for the gpio controller
|
||||
- interrupts : (gpio) interrupt to which the chip is connected
|
||||
|
||||
Optional properties:
|
||||
- touch-gpios : GPIO pin registering a touch event
|
||||
- <supply_name>-supply : Phandle to a regulator supply
|
||||
- touchscreen-size-x : General touchscreen binding, see [1].
|
||||
- touchscreen-size-y : General touchscreen binding, see [1].
|
||||
- touchscreen-inverted-x : General touchscreen binding, see [1].
|
||||
- touchscreen-inverted-y : General touchscreen binding, see [1].
|
||||
- touchscreen-swapped-x-y : General touchscreen binding, see [1].
|
||||
|
||||
[1] All general touchscreen properties are described in
|
||||
Documentation/devicetree/bindings/input/touchscreen/touchscreen.txt.
|
||||
|
||||
Deprecated properties:
|
||||
- rohm,touch-max-x : Maximum outward permitted limit in the X axis
|
||||
- rohm,touch-max-y : Maximum outward permitted limit in the Y axis
|
||||
- rohm,flip-x : Flip touch coordinates on the X axis
|
||||
- rohm,flip-y : Flip touch coordinates on the Y axis
|
||||
|
||||
Example:
|
||||
|
||||
i2c@80110000 {
|
||||
bu21013_tp@5c {
|
||||
compatible = "rohm,bu21013_tp";
|
||||
reg = <0x5c>;
|
||||
interrupt-parent = <&gpio2>;
|
||||
interrupts <&20 IRQ_TYPE_LEVEL_LOW>;
|
||||
touch-gpio = <&gpio2 20 GPIO_ACTIVE_LOW>;
|
||||
avdd-supply = <&ab8500_ldo_aux1_reg>;
|
||||
|
||||
touchscreen-size-x = <384>;
|
||||
touchscreen-size-y = <704>;
|
||||
touchscreen-inverted-y;
|
||||
};
|
||||
};
|
35
bindings/input/touchscreen/bu21029.txt
Normal file
35
bindings/input/touchscreen/bu21029.txt
Normal file
@@ -0,0 +1,35 @@
|
||||
* Rohm BU21029 Touch Screen Controller
|
||||
|
||||
Required properties:
|
||||
- compatible : must be "rohm,bu21029"
|
||||
- reg : i2c device address of the chip (0x40 or 0x41)
|
||||
- interrupt-parent : the phandle for the gpio controller
|
||||
- interrupts : (gpio) interrupt to which the chip is connected
|
||||
- rohm,x-plate-ohms : x-plate resistance in Ohm
|
||||
|
||||
Optional properties:
|
||||
- reset-gpios : gpio pin to reset the chip (active low)
|
||||
- touchscreen-size-x : horizontal resolution of touchscreen (in pixels)
|
||||
- touchscreen-size-y : vertical resolution of touchscreen (in pixels)
|
||||
- touchscreen-max-pressure: maximum pressure value
|
||||
- vdd-supply : power supply for the controller
|
||||
|
||||
Example:
|
||||
|
||||
&i2c1 {
|
||||
/* ... */
|
||||
|
||||
bu21029: bu21029@40 {
|
||||
compatible = "rohm,bu21029";
|
||||
reg = <0x40>;
|
||||
interrupt-parent = <&gpio1>;
|
||||
interrupts = <4 IRQ_TYPE_EDGE_FALLING>;
|
||||
reset-gpios = <&gpio6 16 GPIO_ACTIVE_LOW>;
|
||||
rohm,x-plate-ohms = <600>;
|
||||
touchscreen-size-x = <800>;
|
||||
touchscreen-size-y = <480>;
|
||||
touchscreen-max-pressure = <4095>;
|
||||
};
|
||||
|
||||
/* ... */
|
||||
};
|
62
bindings/input/touchscreen/chipone,icn8318.yaml
Normal file
62
bindings/input/touchscreen/chipone,icn8318.yaml
Normal file
@@ -0,0 +1,62 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/input/touchscreen/chipone,icn8318.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: ChipOne ICN8318 Touchscreen Controller Device Tree Bindings
|
||||
|
||||
maintainers:
|
||||
- Dmitry Torokhov <dmitry.torokhov@gmail.com>
|
||||
|
||||
allOf:
|
||||
- $ref: touchscreen.yaml#
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: chipone,icn8318
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
wake-gpios:
|
||||
maxItems: 1
|
||||
|
||||
unevaluatedProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- interrupts
|
||||
- wake-gpios
|
||||
- touchscreen-size-x
|
||||
- touchscreen-size-y
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
||||
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
touchscreen@40 {
|
||||
compatible = "chipone,icn8318";
|
||||
reg = <0x40>;
|
||||
interrupt-parent = <&pio>;
|
||||
interrupts = <9 IRQ_TYPE_EDGE_FALLING>; /* EINT9 (PG9) */
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&ts_wake_pin_p66>;
|
||||
wake-gpios = <&pio 1 3 GPIO_ACTIVE_HIGH>; /* PB3 */
|
||||
touchscreen-size-x = <800>;
|
||||
touchscreen-size-y = <480>;
|
||||
touchscreen-inverted-x;
|
||||
touchscreen-swapped-x-y;
|
||||
};
|
||||
};
|
||||
|
||||
...
|
34
bindings/input/touchscreen/colibri-vf50-ts.txt
Normal file
34
bindings/input/touchscreen/colibri-vf50-ts.txt
Normal file
@@ -0,0 +1,34 @@
|
||||
* Toradex Colibri VF50 Touchscreen driver
|
||||
|
||||
Required Properties:
|
||||
- compatible must be toradex,vf50-touchscreen
|
||||
- io-channels: adc channels being used by the Colibri VF50 module
|
||||
IIO ADC for Y-, X-, Y+, X+ connections
|
||||
- xp-gpios: FET gate driver for input of X+
|
||||
- xm-gpios: FET gate driver for input of X-
|
||||
- yp-gpios: FET gate driver for input of Y+
|
||||
- ym-gpios: FET gate driver for input of Y-
|
||||
- interrupts: pen irq interrupt for touch detection, signal from X plate
|
||||
- pinctrl-names: "idle", "default"
|
||||
- pinctrl-0: pinctrl node for pen/touch detection, pinctrl must provide
|
||||
pull-up resistor on X+, X-.
|
||||
- pinctrl-1: pinctrl node for X/Y and pressure measurement (ADC) state pinmux
|
||||
- vf50-ts-min-pressure: pressure level at which to stop measuring X/Y values
|
||||
|
||||
Example:
|
||||
|
||||
touchctrl: vf50_touchctrl {
|
||||
compatible = "toradex,vf50-touchscreen";
|
||||
io-channels = <&adc1 0>,<&adc0 0>,
|
||||
<&adc0 1>,<&adc1 2>;
|
||||
xp-gpios = <&gpio0 13 GPIO_ACTIVE_LOW>;
|
||||
xm-gpios = <&gpio2 29 GPIO_ACTIVE_HIGH>;
|
||||
yp-gpios = <&gpio0 12 GPIO_ACTIVE_LOW>;
|
||||
ym-gpios = <&gpio0 4 GPIO_ACTIVE_HIGH>;
|
||||
interrupt-parent = <&gpio0>;
|
||||
interrupts = <8 IRQ_TYPE_LEVEL_LOW>;
|
||||
pinctrl-names = "idle","default";
|
||||
pinctrl-0 = <&pinctrl_touchctrl_idle>, <&pinctrl_touchctrl_gpios>;
|
||||
pinctrl-1 = <&pinctrl_touchctrl_default>, <&pinctrl_touchctrl_gpios>;
|
||||
vf50-ts-min-pressure = <200>;
|
||||
};
|
72
bindings/input/touchscreen/cypress,cy8ctma140.yaml
Normal file
72
bindings/input/touchscreen/cypress,cy8ctma140.yaml
Normal file
@@ -0,0 +1,72 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/input/touchscreen/cypress,cy8ctma140.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Cypress CY8CTMA140 series touchscreen controller bindings
|
||||
|
||||
maintainers:
|
||||
- Linus Walleij <linus.walleij@linaro.org>
|
||||
|
||||
allOf:
|
||||
- $ref: touchscreen.yaml#
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: cypress,cy8ctma140
|
||||
|
||||
reg:
|
||||
const: 0x20
|
||||
|
||||
clock-frequency:
|
||||
description: I2C client clock frequency, defined for host
|
||||
minimum: 100000
|
||||
maximum: 400000
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
vcpin-supply:
|
||||
description: Analog power supply regulator on VCPIN pin
|
||||
|
||||
vdd-supply:
|
||||
description: Digital power supply regulator on VDD pin
|
||||
|
||||
touchscreen-inverted-x: true
|
||||
touchscreen-inverted-y: true
|
||||
touchscreen-size-x: true
|
||||
touchscreen-size-y: true
|
||||
touchscreen-swapped-x-y: true
|
||||
touchscreen-max-pressure: true
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- interrupts
|
||||
- touchscreen-size-x
|
||||
- touchscreen-size-y
|
||||
- touchscreen-max-pressure
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
touchscreen@20 {
|
||||
compatible = "cypress,cy8ctma140";
|
||||
reg = <0x20>;
|
||||
touchscreen-size-x = <480>;
|
||||
touchscreen-size-y = <800>;
|
||||
touchscreen-max-pressure = <255>;
|
||||
interrupt-parent = <&gpio6>;
|
||||
interrupts = <26 IRQ_TYPE_EDGE_FALLING>;
|
||||
vdd-supply = <&ab8500_ldo_aux2_reg>;
|
||||
vcpin-supply = <&ab8500_ldo_aux2_reg>;
|
||||
};
|
||||
};
|
||||
|
||||
...
|
148
bindings/input/touchscreen/cypress,cy8ctma340.yaml
Normal file
148
bindings/input/touchscreen/cypress,cy8ctma340.yaml
Normal file
@@ -0,0 +1,148 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/input/touchscreen/cypress,cy8ctma340.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Cypress CY8CTMA340 series touchscreen controller bindings
|
||||
|
||||
description: The Cypress CY8CTMA340 series (also known as "CYTTSP" after
|
||||
the marketing name Cypress TrueTouch Standard Product) touchscreens can
|
||||
be connected to either I2C or SPI buses.
|
||||
|
||||
maintainers:
|
||||
- Javier Martinez Canillas <javier@dowhile0.org>
|
||||
- Linus Walleij <linus.walleij@linaro.org>
|
||||
|
||||
allOf:
|
||||
- $ref: touchscreen.yaml#
|
||||
|
||||
properties:
|
||||
$nodename:
|
||||
pattern: "^touchscreen(@.*)?$"
|
||||
|
||||
compatible:
|
||||
oneOf:
|
||||
- const: cypress,cy8ctma340
|
||||
- const: cypress,cy8ctst341
|
||||
- const: cypress,cyttsp-spi
|
||||
description: Legacy compatible for SPI connected CY8CTMA340
|
||||
deprecated: true
|
||||
- const: cypress,cyttsp-i2c
|
||||
description: Legacy compatible for I2C connected CY8CTMA340
|
||||
deprecated: true
|
||||
|
||||
reg:
|
||||
description: I2C address when used on the I2C bus, or the SPI chip
|
||||
select index when used on the SPI bus
|
||||
|
||||
clock-frequency:
|
||||
description: I2C client clock frequency, defined for host when using
|
||||
the device on the I2C bus
|
||||
minimum: 0
|
||||
maximum: 400000
|
||||
|
||||
spi-max-frequency:
|
||||
description: SPI clock frequency, defined for host, defined when using
|
||||
the device on the SPI bus. The throughput is maximum 2 Mbps so the
|
||||
typical value is 2000000, if higher rates are used the total throughput
|
||||
needs to be restricted to 2 Mbps.
|
||||
minimum: 0
|
||||
maximum: 6000000
|
||||
|
||||
interrupts:
|
||||
description: Interrupt to host
|
||||
maxItems: 1
|
||||
|
||||
vcpin-supply:
|
||||
description: Analog power supply regulator on VCPIN pin
|
||||
|
||||
vdd-supply:
|
||||
description: Digital power supply regulator on VDD pin
|
||||
|
||||
reset-gpios:
|
||||
description: Reset line for the touchscreen, should be tagged
|
||||
as GPIO_ACTIVE_LOW
|
||||
|
||||
bootloader-key:
|
||||
description: the 8-byte bootloader key that is required to switch
|
||||
the chip from bootloader mode (default mode) to application mode
|
||||
$ref: /schemas/types.yaml#/definitions/uint8-array
|
||||
minItems: 8
|
||||
maxItems: 8
|
||||
|
||||
touchscreen-size-x: true
|
||||
touchscreen-size-y: true
|
||||
touchscreen-fuzz-x: true
|
||||
touchscreen-fuzz-y: true
|
||||
|
||||
active-distance:
|
||||
description: the distance in pixels beyond which a touch must move
|
||||
before movement is detected and reported by the device
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
minimum: 0
|
||||
maximum: 15
|
||||
|
||||
active-interval-ms:
|
||||
description: the minimum period in ms between consecutive
|
||||
scanning/processing cycles when the chip is in active mode
|
||||
minimum: 0
|
||||
maximum: 255
|
||||
|
||||
lowpower-interval-ms:
|
||||
description: the minimum period in ms between consecutive
|
||||
scanning/processing cycles when the chip is in low-power mode
|
||||
minimum: 0
|
||||
maximum: 2550
|
||||
|
||||
touch-timeout-ms:
|
||||
description: minimum time in ms spent in the active power state while no
|
||||
touches are detected before entering low-power mode
|
||||
minimum: 0
|
||||
maximum: 2550
|
||||
|
||||
use-handshake:
|
||||
description: enable register-based handshake (boolean). This should only
|
||||
be used if the chip is configured to use 'blocking communication with
|
||||
timeout' (in this case the device generates an interrupt at the end of
|
||||
every scanning/processing cycle)
|
||||
$ref: /schemas/types.yaml#/definitions/flag
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- interrupts
|
||||
- bootloader-key
|
||||
- touchscreen-size-x
|
||||
- touchscreen-size-y
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
spi {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
num-cs = <1>;
|
||||
cs-gpios = <&gpio 2 GPIO_ACTIVE_HIGH>;
|
||||
|
||||
touchscreen@0 {
|
||||
compatible = "cypress,cy8ctma340";
|
||||
reg = <0>;
|
||||
interrupt-parent = <&gpio>;
|
||||
interrupts = <20 IRQ_TYPE_EDGE_FALLING>;
|
||||
reset-gpios = <&gpio 21 GPIO_ACTIVE_LOW>;
|
||||
vdd-supply = <&ldo_aux1_reg>;
|
||||
vcpin-supply = <&ldo_aux2_reg>;
|
||||
bootloader-key = /bits/ 8 <0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07>;
|
||||
touchscreen-size-x = <480>;
|
||||
touchscreen-size-y = <800>;
|
||||
active-interval-ms = <0>;
|
||||
touch-timeout-ms = <255>;
|
||||
lowpower-interval-ms = <10>;
|
||||
};
|
||||
};
|
||||
|
||||
...
|
129
bindings/input/touchscreen/edt-ft5x06.yaml
Normal file
129
bindings/input/touchscreen/edt-ft5x06.yaml
Normal file
@@ -0,0 +1,129 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/input/touchscreen/edt-ft5x06.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: FocalTech EDT-FT5x06 Polytouch Bindings
|
||||
|
||||
description: |
|
||||
There are 5 variants of the chip for various touch panel sizes
|
||||
FT5206GE1 2.8" .. 3.8"
|
||||
FT5306DE4 4.3" .. 7"
|
||||
FT5406EE8 7" .. 8.9"
|
||||
FT5506EEG 7" .. 8.9"
|
||||
FT5726NEI 5.7” .. 11.6"
|
||||
|
||||
maintainers:
|
||||
- Dmitry Torokhov <dmitry.torokhov@gmail.com>
|
||||
|
||||
allOf:
|
||||
- $ref: touchscreen.yaml#
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
enum:
|
||||
- evervision,ev-ft5726
|
||||
|
||||
then:
|
||||
properties:
|
||||
offset-x: true
|
||||
offset-y: true
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- edt,edt-ft5206
|
||||
- edt,edt-ft5306
|
||||
- edt,edt-ft5406
|
||||
- edt,edt-ft5506
|
||||
- evervision,ev-ft5726
|
||||
- focaltech,ft6236
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
reset-gpios:
|
||||
maxItems: 1
|
||||
|
||||
wake-gpios:
|
||||
maxItems: 1
|
||||
|
||||
wakeup-source: true
|
||||
|
||||
vcc-supply: true
|
||||
iovcc-supply: true
|
||||
|
||||
gain:
|
||||
description: Allows setting the sensitivity in the range from 0 to 31.
|
||||
Note that lower values indicate higher sensitivity.
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
minimum: 0
|
||||
maximum: 31
|
||||
|
||||
offset:
|
||||
description: Allows setting the edge compensation in the range from 0 to 31.
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
minimum: 0
|
||||
maximum: 31
|
||||
|
||||
offset-x:
|
||||
description: Same as offset, but applies only to the horizontal position.
|
||||
Range from 0 to 80, only supported by evervision,ev-ft5726 devices.
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
minimum: 0
|
||||
maximum: 80
|
||||
|
||||
offset-y:
|
||||
description: Same as offset, but applies only to the vertical position.
|
||||
Range from 0 to 80, only supported by evervision,ev-ft5726 devices.
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
minimum: 0
|
||||
maximum: 80
|
||||
|
||||
report-rate-hz:
|
||||
description: |
|
||||
Allows setting the scan rate in Hertz.
|
||||
M06 supports range from 30 to 140 Hz.
|
||||
M12 supports range from 1 to 255 Hz.
|
||||
minimum: 1
|
||||
maximum: 255
|
||||
|
||||
touchscreen-size-x: true
|
||||
touchscreen-size-y: true
|
||||
touchscreen-fuzz-x: true
|
||||
touchscreen-fuzz-y: true
|
||||
touchscreen-inverted-x: true
|
||||
touchscreen-inverted-y: true
|
||||
touchscreen-swapped-x-y: true
|
||||
interrupt-controller: true
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- interrupts
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
edt-ft5x06@38 {
|
||||
compatible = "edt,edt-ft5406";
|
||||
reg = <0x38>;
|
||||
interrupt-parent = <&gpio2>;
|
||||
interrupts = <5 IRQ_TYPE_EDGE_FALLING>;
|
||||
reset-gpios = <&gpio2 6 GPIO_ACTIVE_LOW>;
|
||||
wake-gpios = <&gpio4 9 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
|
||||
...
|
58
bindings/input/touchscreen/eeti,exc3000.yaml
Normal file
58
bindings/input/touchscreen/eeti,exc3000.yaml
Normal file
@@ -0,0 +1,58 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/input/touchscreen/eeti,exc3000.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: EETI EXC3000 series touchscreen controller
|
||||
|
||||
maintainers:
|
||||
- Dmitry Torokhov <dmitry.torokhov@gmail.com>
|
||||
|
||||
allOf:
|
||||
- $ref: touchscreen.yaml#
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- eeti,exc3000
|
||||
- eeti,exc80h60
|
||||
- eeti,exc80h84
|
||||
reg:
|
||||
const: 0x2a
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
reset-gpios:
|
||||
maxItems: 1
|
||||
touchscreen-size-x: true
|
||||
touchscreen-size-y: true
|
||||
touchscreen-inverted-x: true
|
||||
touchscreen-inverted-y: true
|
||||
touchscreen-swapped-x-y: true
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- interrupts
|
||||
- touchscreen-size-x
|
||||
- touchscreen-size-y
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include "dt-bindings/interrupt-controller/irq.h"
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
touchscreen@2a {
|
||||
compatible = "eeti,exc3000";
|
||||
reg = <0x2a>;
|
||||
interrupt-parent = <&gpio1>;
|
||||
interrupts = <9 IRQ_TYPE_LEVEL_LOW>;
|
||||
touchscreen-size-x = <4096>;
|
||||
touchscreen-size-y = <4096>;
|
||||
touchscreen-inverted-x;
|
||||
touchscreen-swapped-x-y;
|
||||
};
|
||||
};
|
30
bindings/input/touchscreen/eeti.txt
Normal file
30
bindings/input/touchscreen/eeti.txt
Normal file
@@ -0,0 +1,30 @@
|
||||
Bindings for EETI touchscreen controller
|
||||
|
||||
Required properties:
|
||||
- compatible: should be "eeti,exc3000-i2c"
|
||||
- reg: I2C address of the chip. Should be set to <0xa>
|
||||
- interrupts: interrupt to which the chip is connected
|
||||
|
||||
Optional properties:
|
||||
- attn-gpios: A handle to a GPIO to check whether interrupt is still
|
||||
latched. This is necessary for platforms that lack
|
||||
support for level-triggered IRQs.
|
||||
|
||||
The following optional properties described in touchscreen.txt are
|
||||
also supported:
|
||||
|
||||
- touchscreen-inverted-x
|
||||
- touchscreen-inverted-y
|
||||
- touchscreen-swapped-x-y
|
||||
|
||||
Example:
|
||||
|
||||
i2c-master {
|
||||
touchscreen@a {
|
||||
compatible = "eeti,exc3000-i2c";
|
||||
reg = <0xa>;
|
||||
interrupt-parent = <&gpio>;
|
||||
interrupts = <123 IRQ_TYPE_EDGE_RISING>;
|
||||
attn-gpios = <&gpio 123 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
18
bindings/input/touchscreen/egalax-ts.txt
Normal file
18
bindings/input/touchscreen/egalax-ts.txt
Normal file
@@ -0,0 +1,18 @@
|
||||
* EETI eGalax Multiple Touch Controller
|
||||
|
||||
Required properties:
|
||||
- compatible: must be "eeti,egalax_ts"
|
||||
- reg: i2c slave address
|
||||
- interrupts: touch controller interrupt
|
||||
- wakeup-gpios: the gpio pin to be used for waking up the controller
|
||||
and also used as irq pin
|
||||
|
||||
Example:
|
||||
|
||||
touchscreen@4 {
|
||||
compatible = "eeti,egalax_ts";
|
||||
reg = <0x04>;
|
||||
interrupt-parent = <&gpio1>;
|
||||
interrupts = <9 2>;
|
||||
wakeup-gpios = <&gpio1 9 0>;
|
||||
};
|
25
bindings/input/touchscreen/ektf2127.txt
Normal file
25
bindings/input/touchscreen/ektf2127.txt
Normal file
@@ -0,0 +1,25 @@
|
||||
* Elan eKTF2127 I2C touchscreen controller
|
||||
|
||||
Required properties:
|
||||
- compatible : "elan,ektf2127" or "elan,ektf2132"
|
||||
- reg : I2C slave address of the chip (0x40)
|
||||
- interrupts : interrupt specification for the ektf2127 interrupt
|
||||
- power-gpios : GPIO specification for the pin connected to the
|
||||
ektf2127's wake input. This needs to be driven high
|
||||
to take ektf2127 out of its low power state
|
||||
|
||||
For additional optional properties see: touchscreen.txt
|
||||
|
||||
Example:
|
||||
|
||||
i2c@00000000 {
|
||||
ektf2127: touchscreen@15 {
|
||||
compatible = "elan,ektf2127";
|
||||
reg = <0x15>;
|
||||
interrupt-parent = <&pio>;
|
||||
interrupts = <6 11 IRQ_TYPE_EDGE_FALLING>
|
||||
power-gpios = <&pio 1 3 GPIO_ACTIVE_HIGH>;
|
||||
touchscreen-inverted-x;
|
||||
touchscreen-swapped-x-y;
|
||||
};
|
||||
};
|
74
bindings/input/touchscreen/elan,elants_i2c.yaml
Normal file
74
bindings/input/touchscreen/elan,elants_i2c.yaml
Normal file
@@ -0,0 +1,74 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: "http://devicetree.org/schemas/input/touchscreen/elan,elants_i2c.yaml#"
|
||||
$schema: "http://devicetree.org/meta-schemas/core.yaml#"
|
||||
|
||||
title: Elantech I2C Touchscreen
|
||||
|
||||
maintainers:
|
||||
- David Heidelberg <david@ixit.cz>
|
||||
|
||||
allOf:
|
||||
- $ref: touchscreen.yaml#
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
oneOf:
|
||||
- enum:
|
||||
- elan,ektf3624
|
||||
- elan,ekth3500
|
||||
- items:
|
||||
- const: elan,ekth3915
|
||||
- const: elan,ekth3500
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
wakeup-source:
|
||||
type: boolean
|
||||
description: touchscreen can be used as a wakeup source.
|
||||
|
||||
reset-gpios:
|
||||
maxItems: 1
|
||||
description: reset gpio the chip is connected to.
|
||||
|
||||
vcc33-supply:
|
||||
description: a phandle for the regulator supplying 3.3V power.
|
||||
|
||||
vccio-supply:
|
||||
description: a phandle for the regulator supplying IO power.
|
||||
|
||||
touchscreen-inverted-x: true
|
||||
touchscreen-inverted-y: true
|
||||
touchscreen-size-x: true
|
||||
touchscreen-size-y: true
|
||||
touchscreen-swapped-x-y: true
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- interrupts
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
touchscreen@10 {
|
||||
compatible = "elan,ekth3500";
|
||||
reg = <0x10>;
|
||||
|
||||
interrupt-parent = <&gpio4>;
|
||||
interrupts = <0x0 IRQ_TYPE_EDGE_FALLING>;
|
||||
wakeup-source;
|
||||
};
|
||||
};
|
34
bindings/input/touchscreen/fsl-mx25-tcq.txt
Normal file
34
bindings/input/touchscreen/fsl-mx25-tcq.txt
Normal file
@@ -0,0 +1,34 @@
|
||||
Freescale mx25 TS conversion queue module
|
||||
|
||||
mx25 touchscreen conversion queue module which controls the ADC unit of the
|
||||
mx25 for attached touchscreens.
|
||||
|
||||
Required properties:
|
||||
- compatible: Should be "fsl,imx25-tcq".
|
||||
- reg: Memory range of the device.
|
||||
- interrupts: Should be the interrupt number associated with this module within
|
||||
the tscadc unit (<0>).
|
||||
- fsl,wires: Should be '<4>' or '<5>'
|
||||
|
||||
Optional properties:
|
||||
- fsl,pen-debounce-ns: Pen debounce time in nanoseconds.
|
||||
- fsl,pen-threshold: Pen-down threshold for the touchscreen. This is a value
|
||||
between 1 and 4096. It is the ratio between the internal reference voltage
|
||||
and the measured voltage after the plate was precharged. Resistance between
|
||||
plates and therefore the voltage decreases with pressure so that a smaller
|
||||
value is equivalent to a higher pressure.
|
||||
- fsl,settling-time-ns: Settling time in nanoseconds. The settling time is before
|
||||
the actual touch detection to wait for an even charge distribution in the
|
||||
plate.
|
||||
|
||||
This device includes two conversion queues which can be added as subnodes.
|
||||
The first queue is for the touchscreen, the second for general purpose ADC.
|
||||
|
||||
Example:
|
||||
tsc: tcq@50030400 {
|
||||
compatible = "fsl,imx25-tcq";
|
||||
reg = <0x50030400 0x60>;
|
||||
interrupt-parent = <&tscadc>;
|
||||
interrupts = <0>;
|
||||
fsl,wires = <4>;
|
||||
};
|
81
bindings/input/touchscreen/goodix.yaml
Normal file
81
bindings/input/touchscreen/goodix.yaml
Normal file
@@ -0,0 +1,81 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/input/touchscreen/goodix.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Goodix GT9xx series touchscreen controller Bindings
|
||||
|
||||
maintainers:
|
||||
- Dmitry Torokhov <dmitry.torokhov@gmail.com>
|
||||
|
||||
allOf:
|
||||
- $ref: touchscreen.yaml#
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- goodix,gt1151
|
||||
- goodix,gt1158
|
||||
- goodix,gt5663
|
||||
- goodix,gt5688
|
||||
- goodix,gt911
|
||||
- goodix,gt9110
|
||||
- goodix,gt912
|
||||
- goodix,gt9147
|
||||
- goodix,gt917s
|
||||
- goodix,gt927
|
||||
- goodix,gt9271
|
||||
- goodix,gt928
|
||||
- goodix,gt9286
|
||||
- goodix,gt967
|
||||
|
||||
reg:
|
||||
enum: [ 0x5d, 0x14 ]
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
irq-gpios:
|
||||
description: GPIO pin used for IRQ. The driver uses the interrupt gpio pin
|
||||
as output to reset the device.
|
||||
maxItems: 1
|
||||
|
||||
reset-gpios:
|
||||
maxItems: 1
|
||||
|
||||
AVDD28-supply:
|
||||
description: Analog power supply regulator on AVDD28 pin
|
||||
|
||||
VDDIO-supply:
|
||||
description: GPIO power supply regulator on VDDIO pin
|
||||
|
||||
touchscreen-inverted-x: true
|
||||
touchscreen-inverted-y: true
|
||||
touchscreen-size-x: true
|
||||
touchscreen-size-y: true
|
||||
touchscreen-swapped-x-y: true
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- interrupts
|
||||
|
||||
examples:
|
||||
- |
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
gt928@5d {
|
||||
compatible = "goodix,gt928";
|
||||
reg = <0x5d>;
|
||||
interrupt-parent = <&gpio>;
|
||||
interrupts = <0 0>;
|
||||
irq-gpios = <&gpio1 0 0>;
|
||||
reset-gpios = <&gpio1 1 0>;
|
||||
};
|
||||
};
|
||||
|
||||
...
|
41
bindings/input/touchscreen/hideep.txt
Normal file
41
bindings/input/touchscreen/hideep.txt
Normal file
@@ -0,0 +1,41 @@
|
||||
* HiDeep Finger and Stylus touchscreen controller
|
||||
|
||||
Required properties:
|
||||
- compatible : must be "hideep,hideep-ts"
|
||||
- reg : I2C slave address, (e.g. 0x6C).
|
||||
- interrupts : Interrupt to which the chip is connected.
|
||||
|
||||
Optional properties:
|
||||
- vdd-supply : It is the controller supply for controlling
|
||||
main voltage(3.3V) through the regulator.
|
||||
- vid-supply : It is the controller supply for controlling
|
||||
IO voltage(1.8V) through the regulator.
|
||||
- reset-gpios : Define for reset gpio pin.
|
||||
It is to use for reset IC.
|
||||
- touchscreen-size-x : X axis size of touchscreen
|
||||
- touchscreen-size-y : Y axis size of touchscreen
|
||||
- linux,keycodes : Specifies an array of numeric keycode values to
|
||||
be used for reporting button presses. The array can
|
||||
contain up to 3 entries.
|
||||
|
||||
Example:
|
||||
|
||||
#include "dt-bindings/input/input.h"
|
||||
|
||||
i2c@00000000 {
|
||||
|
||||
/* ... */
|
||||
|
||||
touchscreen@6c {
|
||||
compatible = "hideep,hideep-ts";
|
||||
reg = <0x6c>;
|
||||
interrupt-parent = <&gpx1>;
|
||||
interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
|
||||
vdd-supply = <&ldo15_reg>;
|
||||
vid-supply = <&ldo18_reg>;
|
||||
reset-gpios = <&gpx1 5 0>;
|
||||
touchscreen-size-x = <1080>;
|
||||
touchscreen-size-y = <1920>;
|
||||
linux,keycodes = <KEY_HOME>, <KEY_MENU>, <KEY_BACK>;
|
||||
};
|
||||
};
|
119
bindings/input/touchscreen/hycon,hy46xx.yaml
Normal file
119
bindings/input/touchscreen/hycon,hy46xx.yaml
Normal file
@@ -0,0 +1,119 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/input/touchscreen/hycon,hy46xx.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Hycon HY46XX series touchscreen controller bindings
|
||||
|
||||
description: |
|
||||
There are 6 variants of the chip for various touch panel sizes and cover lens material
|
||||
Glass: 0.3mm--4.0mm
|
||||
PET/PMMA: 0.2mm--2.0mm
|
||||
HY4613(B)-N048 < 6"
|
||||
HY4614(B)-N068 7" .. 10.1"
|
||||
HY4621-NS32 < 5"
|
||||
HY4623-NS48 5.1" .. 7"
|
||||
Glass: 0.3mm--8.0mm
|
||||
PET/PMMA: 0.2mm--4.0mm
|
||||
HY4633(B)-N048 < 6"
|
||||
HY4635(B)-N048 < 7" .. 10.1"
|
||||
|
||||
maintainers:
|
||||
- Giulio Benetti <giulio.benetti@benettiengineering.com>
|
||||
|
||||
allOf:
|
||||
- $ref: touchscreen.yaml#
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- hycon,hy4613
|
||||
- hycon,hy4614
|
||||
- hycon,hy4621
|
||||
- hycon,hy4623
|
||||
- hycon,hy4633
|
||||
- hycon,hy4635
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
reset-gpios:
|
||||
maxItems: 1
|
||||
|
||||
vcc-supply: true
|
||||
|
||||
hycon,threshold:
|
||||
description: Allows setting the sensitivity in the range from 0 to 255.
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
minimum: 0
|
||||
maximum: 255
|
||||
|
||||
hycon,glove-enable:
|
||||
type: boolean
|
||||
description: Allows enabling glove setting.
|
||||
|
||||
hycon,report-speed-hz:
|
||||
description: Allows setting the report speed in Hertz.
|
||||
minimum: 1
|
||||
maximum: 255
|
||||
|
||||
hycon,noise-filter-enable:
|
||||
type: boolean
|
||||
description: Allows enabling power noise filter.
|
||||
|
||||
hycon,filter-data:
|
||||
description: Allows setting how many samples throw before reporting touch
|
||||
in the range from 0 to 5.
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
minimum: 0
|
||||
maximum: 5
|
||||
|
||||
hycon,gain:
|
||||
description: Allows setting the sensitivity distance in the range from 0 to 5.
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
minimum: 0
|
||||
maximum: 5
|
||||
|
||||
hycon,edge-offset:
|
||||
description: Allows setting the edge compensation in the range from 0 to 16.
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
minimum: 0
|
||||
maximum: 16
|
||||
|
||||
touchscreen-size-x: true
|
||||
touchscreen-size-y: true
|
||||
touchscreen-fuzz-x: true
|
||||
touchscreen-fuzz-y: true
|
||||
touchscreen-inverted-x: true
|
||||
touchscreen-inverted-y: true
|
||||
touchscreen-swapped-x-y: true
|
||||
interrupt-controller: true
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- interrupts
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
touchscreen@1c {
|
||||
compatible = "hycon,hy4633";
|
||||
reg = <0x1c>;
|
||||
interrupt-parent = <&gpio2>;
|
||||
interrupts = <5 IRQ_TYPE_EDGE_FALLING>;
|
||||
reset-gpios = <&gpio2 6 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
...
|
76
bindings/input/touchscreen/ilitek_ts_i2c.yaml
Normal file
76
bindings/input/touchscreen/ilitek_ts_i2c.yaml
Normal file
@@ -0,0 +1,76 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/input/touchscreen/ilitek_ts_i2c.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Ilitek I2C Touchscreen Controller
|
||||
|
||||
maintainers:
|
||||
- Dmitry Torokhov <dmitry.torokhov@gmail.com>
|
||||
|
||||
allOf:
|
||||
- $ref: touchscreen.yaml#
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- ilitek,ili210x
|
||||
- ilitek,ili2117
|
||||
- ilitek,ili2120
|
||||
- ilitek,ili2130
|
||||
- ilitek,ili2131
|
||||
- ilitek,ili2132
|
||||
- ilitek,ili2316
|
||||
- ilitek,ili2322
|
||||
- ilitek,ili2323
|
||||
- ilitek,ili2326
|
||||
- ilitek,ili251x
|
||||
- ilitek,ili2520
|
||||
- ilitek,ili2521
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
reset-gpios:
|
||||
maxItems: 1
|
||||
|
||||
wakeup-source:
|
||||
type: boolean
|
||||
description: touchscreen can be used as a wakeup source.
|
||||
|
||||
touchscreen-size-x: true
|
||||
touchscreen-size-y: true
|
||||
touchscreen-inverted-x: true
|
||||
touchscreen-inverted-y: true
|
||||
touchscreen-swapped-x-y: true
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- interrupts
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
touchscreen@41 {
|
||||
compatible = "ilitek,ili2520";
|
||||
reg = <0x41>;
|
||||
|
||||
interrupt-parent = <&gpio1>;
|
||||
interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
|
||||
reset-gpios = <&gpio1 8 GPIO_ACTIVE_LOW>;
|
||||
touchscreen-inverted-y;
|
||||
wakeup-source;
|
||||
};
|
||||
};
|
74
bindings/input/touchscreen/imagis,ist3038c.yaml
Normal file
74
bindings/input/touchscreen/imagis,ist3038c.yaml
Normal file
@@ -0,0 +1,74 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/input/touchscreen/imagis,ist3038c.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Imagis IST30XXC family touchscreen controller bindings
|
||||
|
||||
maintainers:
|
||||
- Markuss Broks <markuss.broks@gmail.com>
|
||||
|
||||
allOf:
|
||||
- $ref: touchscreen.yaml#
|
||||
|
||||
properties:
|
||||
$nodename:
|
||||
pattern: "^touchscreen@[0-9a-f]+$"
|
||||
|
||||
compatible:
|
||||
enum:
|
||||
- imagis,ist3038c
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
vdd-supply:
|
||||
description: Power supply regulator for the chip
|
||||
|
||||
vddio-supply:
|
||||
description: Power supply regulator for the I2C bus
|
||||
|
||||
touchscreen-size-x: true
|
||||
touchscreen-size-y: true
|
||||
touchscreen-fuzz-x: true
|
||||
touchscreen-fuzz-y: true
|
||||
touchscreen-inverted-x: true
|
||||
touchscreen-inverted-y: true
|
||||
touchscreen-swapped-x-y: true
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- interrupts
|
||||
- touchscreen-size-x
|
||||
- touchscreen-size-y
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
touchscreen@50 {
|
||||
compatible = "imagis,ist3038c";
|
||||
reg = <0x50>;
|
||||
interrupt-parent = <&gpio>;
|
||||
interrupts = <13 IRQ_TYPE_EDGE_FALLING>;
|
||||
vdd-supply = <&ldo1_reg>;
|
||||
vddio-supply = <&ldo2_reg>;
|
||||
touchscreen-size-x = <720>;
|
||||
touchscreen-size-y = <1280>;
|
||||
touchscreen-fuzz-x = <10>;
|
||||
touchscreen-fuzz-y = <10>;
|
||||
touchscreen-inverted-x;
|
||||
touchscreen-inverted-y;
|
||||
};
|
||||
};
|
||||
|
||||
...
|
38
bindings/input/touchscreen/imx6ul_tsc.txt
Normal file
38
bindings/input/touchscreen/imx6ul_tsc.txt
Normal file
@@ -0,0 +1,38 @@
|
||||
* Freescale i.MX6UL Touch Controller
|
||||
|
||||
Required properties:
|
||||
- compatible: must be "fsl,imx6ul-tsc".
|
||||
- reg: this touch controller address and the ADC2 address.
|
||||
- interrupts: the interrupt of this touch controller and ADC2.
|
||||
- clocks: the root clock of touch controller and ADC2.
|
||||
- clock-names; must be "tsc" and "adc".
|
||||
- xnur-gpio: the X- gpio this controller connect to.
|
||||
This xnur-gpio returns to low once the finger leave the touch screen (The
|
||||
last touch event the touch controller capture).
|
||||
|
||||
Optional properties:
|
||||
- measure-delay-time: the value of measure delay time.
|
||||
Before X-axis or Y-axis measurement, the screen need some time before
|
||||
even potential distribution ready.
|
||||
This value depends on the touch screen.
|
||||
- pre-charge-time: the touch screen need some time to precharge.
|
||||
This value depends on the touch screen.
|
||||
- touchscreen-average-samples: Number of data samples which are averaged for
|
||||
each read. Valid values are 1, 4, 8, 16 and 32.
|
||||
|
||||
Example:
|
||||
tsc: tsc@2040000 {
|
||||
compatible = "fsl,imx6ul-tsc";
|
||||
reg = <0x02040000 0x4000>, <0x0219c000 0x4000>;
|
||||
interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&clks IMX6UL_CLK_IPG>,
|
||||
<&clks IMX6UL_CLK_ADC2>;
|
||||
clock-names = "tsc", "adc";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_tsc>;
|
||||
xnur-gpio = <&gpio1 3 GPIO_ACTIVE_LOW>;
|
||||
measure-delay-time = <0xfff>;
|
||||
pre-charge-time = <0xffff>;
|
||||
touchscreen-average-samples = <32>;
|
||||
};
|
16
bindings/input/touchscreen/lpc32xx-tsc.txt
Normal file
16
bindings/input/touchscreen/lpc32xx-tsc.txt
Normal file
@@ -0,0 +1,16 @@
|
||||
* NXP LPC32xx SoC Touchscreen Controller (TSC)
|
||||
|
||||
Required properties:
|
||||
- compatible: must be "nxp,lpc3220-tsc"
|
||||
- reg: physical base address of the controller and length of memory mapped
|
||||
region.
|
||||
- interrupts: The TSC/ADC interrupt
|
||||
|
||||
Example:
|
||||
|
||||
tsc@40048000 {
|
||||
compatible = "nxp,lpc3220-tsc";
|
||||
reg = <0x40048000 0x1000>;
|
||||
interrupt-parent = <&mic>;
|
||||
interrupts = <39 0>;
|
||||
};
|
17
bindings/input/touchscreen/max11801-ts.txt
Normal file
17
bindings/input/touchscreen/max11801-ts.txt
Normal file
@@ -0,0 +1,17 @@
|
||||
* MAXI MAX11801 Resistive touch screen controller with i2c interface
|
||||
|
||||
Required properties:
|
||||
- compatible: must be "maxim,max11801"
|
||||
- reg: i2c slave address
|
||||
- interrupts: touch controller interrupt
|
||||
|
||||
Example:
|
||||
|
||||
&i2c1 {
|
||||
max11801: touchscreen@48 {
|
||||
compatible = "maxim,max11801";
|
||||
reg = <0x48>;
|
||||
interrupt-parent = <&gpio3>;
|
||||
interrupts = <31 IRQ_TYPE_EDGE_FALLING>;
|
||||
};
|
||||
};
|
87
bindings/input/touchscreen/melfas,mms114.yaml
Normal file
87
bindings/input/touchscreen/melfas,mms114.yaml
Normal file
@@ -0,0 +1,87 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/input/touchscreen/melfas,mms114.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Melfas MMS114 family touchscreen controller bindings
|
||||
|
||||
maintainers:
|
||||
- Linus Walleij <linus.walleij@linaro.org>
|
||||
|
||||
allOf:
|
||||
- $ref: touchscreen.yaml#
|
||||
|
||||
properties:
|
||||
$nodename:
|
||||
pattern: "^touchscreen(@.*)?$"
|
||||
|
||||
compatible:
|
||||
items:
|
||||
- enum:
|
||||
- melfas,mms114
|
||||
- melfas,mms134s
|
||||
- melfas,mms136
|
||||
- melfas,mms152
|
||||
- melfas,mms345l
|
||||
|
||||
reg:
|
||||
description: I2C address
|
||||
|
||||
clock-frequency:
|
||||
description: I2C client clock frequency, defined for host
|
||||
minimum: 100000
|
||||
maximum: 400000
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
avdd-supply:
|
||||
description: Analog power supply regulator on AVDD pin
|
||||
|
||||
vdd-supply:
|
||||
description: Digital power supply regulator on VDD pin
|
||||
|
||||
touchscreen-size-x: true
|
||||
touchscreen-size-y: true
|
||||
touchscreen-fuzz-x: true
|
||||
touchscreen-fuzz-y: true
|
||||
touchscreen-fuzz-pressure: true
|
||||
touchscreen-inverted-x: true
|
||||
touchscreen-inverted-y: true
|
||||
touchscreen-swapped-x-y: true
|
||||
touchscreen-max-pressure: true
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- interrupts
|
||||
- touchscreen-size-x
|
||||
- touchscreen-size-y
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
touchscreen@48 {
|
||||
compatible = "melfas,mms114";
|
||||
reg = <0x48>;
|
||||
interrupt-parent = <&gpio>;
|
||||
interrupts = <39 IRQ_TYPE_EDGE_FALLING>;
|
||||
avdd-supply = <&ldo1_reg>;
|
||||
vdd-supply = <&ldo2_reg>;
|
||||
touchscreen-size-x = <720>;
|
||||
touchscreen-size-y = <1280>;
|
||||
touchscreen-fuzz-x = <10>;
|
||||
touchscreen-fuzz-y = <10>;
|
||||
touchscreen-fuzz-pressure = <10>;
|
||||
touchscreen-inverted-x;
|
||||
touchscreen-inverted-y;
|
||||
};
|
||||
};
|
||||
|
||||
...
|
20
bindings/input/touchscreen/melfas_mip4.txt
Normal file
20
bindings/input/touchscreen/melfas_mip4.txt
Normal file
@@ -0,0 +1,20 @@
|
||||
* MELFAS MIP4 Touchscreen
|
||||
|
||||
Required properties:
|
||||
- compatible: must be "melfas,mip4_ts"
|
||||
- reg: I2C slave address of the chip (0x48 or 0x34)
|
||||
- interrupts: interrupt to which the chip is connected
|
||||
|
||||
Optional properties:
|
||||
- ce-gpios: GPIO connected to the CE (chip enable) pin of the chip
|
||||
|
||||
Example:
|
||||
i2c@00000000 {
|
||||
touchscreen: melfas_mip4@48 {
|
||||
compatible = "melfas,mip4_ts";
|
||||
reg = <0x48>;
|
||||
interrupt-parent = <&gpio>;
|
||||
interrupts = <0 IRQ_TYPE_EDGE_FALLING>;
|
||||
ce-gpios = <&gpio 0 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
69
bindings/input/touchscreen/mstar,msg2638.yaml
Normal file
69
bindings/input/touchscreen/mstar,msg2638.yaml
Normal file
@@ -0,0 +1,69 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/input/touchscreen/mstar,msg2638.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: MStar msg2638 touchscreen controller Bindings
|
||||
|
||||
maintainers:
|
||||
- Vincent Knecht <vincent.knecht@mailoo.org>
|
||||
|
||||
allOf:
|
||||
- $ref: touchscreen.yaml#
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: mstar,msg2638
|
||||
|
||||
reg:
|
||||
const: 0x26
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
reset-gpios:
|
||||
maxItems: 1
|
||||
|
||||
vdd-supply:
|
||||
description: Power supply regulator for the chip
|
||||
|
||||
vddio-supply:
|
||||
description: Power supply regulator for the I2C bus
|
||||
|
||||
touchscreen-size-x: true
|
||||
touchscreen-size-y: true
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- interrupts
|
||||
- reset-gpios
|
||||
- touchscreen-size-x
|
||||
- touchscreen-size-y
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
touchscreen@26 {
|
||||
compatible = "mstar,msg2638";
|
||||
reg = <0x26>;
|
||||
interrupt-parent = <&msmgpio>;
|
||||
interrupts = <13 IRQ_TYPE_EDGE_FALLING>;
|
||||
reset-gpios = <&msmgpio 100 GPIO_ACTIVE_LOW>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&ts_int_reset_default>;
|
||||
vdd-supply = <&pm8916_l17>;
|
||||
vddio-supply = <&pm8916_l5>;
|
||||
touchscreen-size-x = <2048>;
|
||||
touchscreen-size-y = <2048>;
|
||||
};
|
||||
};
|
||||
|
||||
...
|
68
bindings/input/touchscreen/pixcir,pixcir_ts.yaml
Normal file
68
bindings/input/touchscreen/pixcir,pixcir_ts.yaml
Normal file
@@ -0,0 +1,68 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/input/touchscreen/pixcir,pixcir_ts.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Pixcir Touchscreen Controller Device Tree Bindings
|
||||
|
||||
maintainers:
|
||||
- Dmitry Torokhov <dmitry.torokhov@gmail.com>
|
||||
|
||||
allOf:
|
||||
- $ref: touchscreen.yaml#
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- pixcir,pixcir_ts
|
||||
- pixcir,pixcir_tangoc
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
attb-gpio:
|
||||
maxItems: 1
|
||||
|
||||
reset-gpios:
|
||||
maxItems: 1
|
||||
|
||||
enable-gpios:
|
||||
maxItems: 1
|
||||
|
||||
wake-gpios:
|
||||
maxItems: 1
|
||||
|
||||
unevaluatedProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- interrupts
|
||||
- attb-gpio
|
||||
- touchscreen-size-x
|
||||
- touchscreen-size-y
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
||||
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
touchscreen@5c {
|
||||
compatible = "pixcir,pixcir_ts";
|
||||
reg = <0x5c>;
|
||||
interrupts = <2 0>;
|
||||
attb-gpio = <&gpf 2 0 2>;
|
||||
touchscreen-size-x = <800>;
|
||||
touchscreen-size-y = <600>;
|
||||
};
|
||||
};
|
||||
|
||||
...
|
26
bindings/input/touchscreen/raspberrypi,firmware-ts.txt
Normal file
26
bindings/input/touchscreen/raspberrypi,firmware-ts.txt
Normal file
@@ -0,0 +1,26 @@
|
||||
Raspberry Pi firmware based 7" touchscreen
|
||||
=====================================
|
||||
|
||||
Required properties:
|
||||
- compatible: "raspberrypi,firmware-ts"
|
||||
|
||||
Optional properties:
|
||||
- firmware: Reference to RPi's firmware device node
|
||||
- touchscreen-size-x: See touchscreen.txt
|
||||
- touchscreen-size-y: See touchscreen.txt
|
||||
- touchscreen-inverted-x: See touchscreen.txt
|
||||
- touchscreen-inverted-y: See touchscreen.txt
|
||||
- touchscreen-swapped-x-y: See touchscreen.txt
|
||||
|
||||
Example:
|
||||
|
||||
firmware: firmware-rpi {
|
||||
compatible = "raspberrypi,bcm2835-firmware";
|
||||
mboxes = <&mailbox>;
|
||||
|
||||
ts: touchscreen {
|
||||
compatible = "raspberrypi,firmware-ts";
|
||||
touchscreen-size-x = <800>;
|
||||
touchscreen-size-y = <480>;
|
||||
};
|
||||
};
|
86
bindings/input/touchscreen/resistive-adc-touch.yaml
Normal file
86
bindings/input/touchscreen/resistive-adc-touch.yaml
Normal file
@@ -0,0 +1,86 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/input/touchscreen/resistive-adc-touch.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Generic resistive touchscreen ADC
|
||||
|
||||
maintainers:
|
||||
- Oleksij Rempel <o.rempel@pengutronix.de>
|
||||
|
||||
description: |
|
||||
Generic ADC based resistive touchscreen controller
|
||||
The device must be connected to an ADC device that provides channels for
|
||||
position measurement and optional pressure.
|
||||
|
||||
allOf:
|
||||
- $ref: touchscreen.yaml#
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: resistive-adc-touch
|
||||
|
||||
io-channels:
|
||||
minItems: 2
|
||||
items:
|
||||
- description: x
|
||||
- description: y
|
||||
- description: pressure (optional)
|
||||
- description: z1 (optional)
|
||||
- description: z2 (optional)
|
||||
|
||||
io-channel-names:
|
||||
oneOf:
|
||||
- items:
|
||||
- enum: [x, y]
|
||||
- enum: [x, y]
|
||||
- items:
|
||||
- enum: [x, y, pressure]
|
||||
- enum: [x, y, pressure]
|
||||
- enum: [x, y, pressure]
|
||||
- items:
|
||||
- enum: [x, y, z1, z2]
|
||||
- enum: [x, y, z1, z2]
|
||||
- enum: [x, y, z1, z2]
|
||||
- enum: [x, y, z1, z2]
|
||||
|
||||
touchscreen-size-x: true
|
||||
touchscreen-size-y: true
|
||||
touchscreen-fuzz-x: true
|
||||
touchscreen-fuzz-y: true
|
||||
touchscreen-inverted-x: true
|
||||
touchscreen-inverted-y: true
|
||||
touchscreen-swapped-x-y: true
|
||||
touchscreen-min-pressure: true
|
||||
touchscreen-x-plate-ohms: true
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- io-channels
|
||||
- io-channel-names
|
||||
|
||||
examples:
|
||||
- |
|
||||
touchscreen {
|
||||
compatible = "resistive-adc-touch";
|
||||
io-channels = <&adc 24>, <&adc 25>;
|
||||
io-channel-names = "y", "x";
|
||||
};
|
||||
- |
|
||||
touchscreen {
|
||||
compatible = "resistive-adc-touch";
|
||||
touchscreen-min-pressure = <50000>;
|
||||
io-channels = <&adc 24>, <&adc 25>, <&adc 26>;
|
||||
io-channel-names = "y", "pressure", "x";
|
||||
};
|
||||
- |
|
||||
touchscreen {
|
||||
compatible = "resistive-adc-touch";
|
||||
touchscreen-min-pressure = <50000>;
|
||||
io-channels = <&adc 1>, <&adc 2>, <&adc 3>, <&adc 4>;
|
||||
io-channel-names = "x", "z1", "z2", "y";
|
||||
touchscreen-x-plate-ohms = <800>;
|
||||
};
|
32
bindings/input/touchscreen/samsung,s6sy761.txt
Normal file
32
bindings/input/touchscreen/samsung,s6sy761.txt
Normal file
@@ -0,0 +1,32 @@
|
||||
* Samsung S6SY761 touchscreen controller
|
||||
|
||||
Required properties:
|
||||
- compatible : must be "samsung,s6sy761"
|
||||
- reg : I2C slave address, (e.g. 0x48)
|
||||
- interrupts : interrupt specification
|
||||
- avdd-supply : analogic power supply
|
||||
- vdd-supply : power supply
|
||||
|
||||
Optional properties:
|
||||
- touchscreen-size-x : see touchscreen.txt. This property is embedded in the
|
||||
device. If defined it forces a different x resolution.
|
||||
- touchscreen-size-y : see touchscreen.txt. This property is embedded in the
|
||||
device. If defined it forces a different y resolution.
|
||||
|
||||
Example:
|
||||
|
||||
i2c@00000000 {
|
||||
|
||||
/* ... */
|
||||
|
||||
touchscreen@48 {
|
||||
compatible = "samsung,s6sy761";
|
||||
reg = <0x48>;
|
||||
interrupt-parent = <&gpa1>;
|
||||
interrupts = <1 IRQ_TYPE_NONE>;
|
||||
avdd-supply = <&ldo30_reg>;
|
||||
vdd-supply = <&ldo31_reg>;
|
||||
touchscreen-size-x = <4096>;
|
||||
touchscreen-size-y = <4096>;
|
||||
};
|
||||
};
|
91
bindings/input/touchscreen/silead,gsl1680.yaml
Normal file
91
bindings/input/touchscreen/silead,gsl1680.yaml
Normal file
@@ -0,0 +1,91 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/input/touchscreen/silead,gsl1680.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Silead GSL1680 Touchscreen Controller Device Tree Bindings
|
||||
|
||||
maintainers:
|
||||
- Dmitry Torokhov <dmitry.torokhov@gmail.com>
|
||||
|
||||
allOf:
|
||||
- $ref: touchscreen.yaml#
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- silead,gsl1680
|
||||
- silead,gsl1688
|
||||
- silead,gsl3670
|
||||
- silead,gsl3675
|
||||
- silead,gsl3692
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
power-gpios:
|
||||
maxItems: 1
|
||||
|
||||
firmware-name:
|
||||
$ref: /schemas/types.yaml#/definitions/string
|
||||
description: >
|
||||
File basename for board specific firmware
|
||||
|
||||
silead,max-fingers:
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
maximum: 5
|
||||
description: >
|
||||
Maximum number of fingers the touchscreen can detect
|
||||
|
||||
silead,home-button:
|
||||
type: boolean
|
||||
description: >
|
||||
Does the device have a capacitive home-button build into the
|
||||
touchscreen?
|
||||
|
||||
avdd-supply:
|
||||
description: >
|
||||
Regulator phandle for controller AVDD
|
||||
|
||||
vddio-supply:
|
||||
description: >
|
||||
Regulator phandle for controller VDDIO
|
||||
|
||||
unevaluatedProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- interrupts
|
||||
- power-gpios
|
||||
- touchscreen-size-x
|
||||
- touchscreen-size-y
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
||||
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
touchscreen@40 {
|
||||
compatible = "silead,gsl1680";
|
||||
reg = <0x40>;
|
||||
interrupt-parent = <&pio>;
|
||||
interrupts = <6 11 IRQ_TYPE_EDGE_FALLING>;
|
||||
power-gpios = <&pio 1 3 GPIO_ACTIVE_HIGH>;
|
||||
touchscreen-size-x = <480>;
|
||||
touchscreen-size-y = <800>;
|
||||
touchscreen-inverted-x;
|
||||
touchscreen-swapped-x-y;
|
||||
silead,max-fingers = <5>;
|
||||
};
|
||||
};
|
||||
|
||||
...
|
31
bindings/input/touchscreen/sis_i2c.txt
Normal file
31
bindings/input/touchscreen/sis_i2c.txt
Normal file
@@ -0,0 +1,31 @@
|
||||
* SiS I2C Multiple Touch Controller
|
||||
|
||||
Required properties:
|
||||
- compatible: must be "sis,9200-ts"
|
||||
- reg: i2c slave address
|
||||
- interrupts: touch controller interrupt (see interrupt
|
||||
binding [0])
|
||||
|
||||
Optional properties:
|
||||
- pinctrl-names: should be "default" (see pinctrl binding [1]).
|
||||
- pinctrl-0: a phandle pointing to the pin settings for the
|
||||
device (see pinctrl binding [1]).
|
||||
- attn-gpios: the gpio pin used as attention line
|
||||
- reset-gpios: the gpio pin used to reset the controller
|
||||
- wakeup-source: touchscreen can be used as a wakeup source
|
||||
|
||||
[0]: Documentation/devicetree/bindings/interrupt-controller/interrupts.txt
|
||||
[1]: Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt
|
||||
|
||||
Example:
|
||||
|
||||
sis9255@5c {
|
||||
compatible = "sis,9200-ts";
|
||||
reg = <0x5c>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_sis>;
|
||||
interrupt-parent = <&gpio3>;
|
||||
interrupts = <19 IRQ_TYPE_EDGE_FALLING>;
|
||||
irq-gpios = <&gpio3 19 GPIO_ACTIVE_LOW>;
|
||||
reset-gpios = <&gpio2 30 GPIO_ACTIVE_LOW>;
|
||||
};
|
50
bindings/input/touchscreen/sitronix,st1232.yaml
Normal file
50
bindings/input/touchscreen/sitronix,st1232.yaml
Normal file
@@ -0,0 +1,50 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/input/touchscreen/sitronix,st1232.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Sitronix st1232 or st1633 touchscreen controller
|
||||
|
||||
maintainers:
|
||||
- Bastian Hecht <hechtb@gmail.com>
|
||||
|
||||
allOf:
|
||||
- $ref: touchscreen.yaml#
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- sitronix,st1232
|
||||
- sitronix,st1633
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
gpios:
|
||||
description: A phandle to the reset GPIO
|
||||
maxItems: 1
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- interrupts
|
||||
|
||||
unevaluatedProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
touchscreen@55 {
|
||||
compatible = "sitronix,st1232";
|
||||
reg = <0x55>;
|
||||
interrupts = <2 0>;
|
||||
gpios = <&gpio1 166 0>;
|
||||
};
|
||||
};
|
41
bindings/input/touchscreen/st,stmfts.txt
Normal file
41
bindings/input/touchscreen/st,stmfts.txt
Normal file
@@ -0,0 +1,41 @@
|
||||
* ST-Microelectronics FingerTip touchscreen controller
|
||||
|
||||
The ST-Microelectronics FingerTip device provides a basic touchscreen
|
||||
functionality. Along with it the user can enable the touchkey which can work as
|
||||
a basic HOME and BACK key for phones.
|
||||
|
||||
The driver supports also hovering as an absolute single touch event with x, y, z
|
||||
coordinates.
|
||||
|
||||
Required properties:
|
||||
- compatible : must be "st,stmfts"
|
||||
- reg : I2C slave address, (e.g. 0x49)
|
||||
- interrupts : interrupt specification
|
||||
- avdd-supply : analogic power supply
|
||||
- vdd-supply : power supply
|
||||
- touchscreen-size-x : see touchscreen.txt
|
||||
- touchscreen-size-y : see touchscreen.txt
|
||||
|
||||
Optional properties:
|
||||
- touch-key-connected : specifies whether the touchkey feature is connected
|
||||
- ledvdd-supply : power supply to the touch key leds
|
||||
|
||||
Example:
|
||||
|
||||
i2c@00000000 {
|
||||
|
||||
/* ... */
|
||||
|
||||
touchscreen@49 {
|
||||
compatible = "st,stmfts";
|
||||
reg = <0x49>;
|
||||
interrupt-parent = <&gpa1>;
|
||||
interrupts = <1 IRQ_TYPE_NONE>;
|
||||
touchscreen-size-x = <1599>;
|
||||
touchscreen-size-y = <2559>;
|
||||
touch-key-connected;
|
||||
avdd-supply = <&ldo30_reg>;
|
||||
vdd-supply = <&ldo31_reg>;
|
||||
ledvdd-supply = <&ldo33_reg>;
|
||||
};
|
||||
};
|
108
bindings/input/touchscreen/stmpe.txt
Normal file
108
bindings/input/touchscreen/stmpe.txt
Normal file
@@ -0,0 +1,108 @@
|
||||
STMPE Touchscreen
|
||||
----------------
|
||||
|
||||
Required properties:
|
||||
- compatible: "st,stmpe-ts"
|
||||
|
||||
Optional properties:
|
||||
- st,ave-ctrl : Sample average control
|
||||
0 -> 1 sample
|
||||
1 -> 2 samples
|
||||
2 -> 4 samples
|
||||
3 -> 8 samples
|
||||
- st,touch-det-delay : Touch detect interrupt delay (recommended is 3)
|
||||
0 -> 10 us
|
||||
1 -> 50 us
|
||||
2 -> 100 us
|
||||
3 -> 500 us
|
||||
4 -> 1 ms
|
||||
5 -> 5 ms
|
||||
6 -> 10 ms
|
||||
7 -> 50 ms
|
||||
- st,settling : Panel driver settling time (recommended is 2)
|
||||
0 -> 10 us
|
||||
1 -> 100 us
|
||||
2 -> 500 us
|
||||
3 -> 1 ms
|
||||
4 -> 5 ms
|
||||
5 -> 10 ms
|
||||
6 -> 50 ms
|
||||
7 -> 100 ms
|
||||
- st,fraction-z : Length of the fractional part in z (recommended is 7)
|
||||
(fraction-z ([0..7]) = Count of the fractional part)
|
||||
- st,i-drive : current limit value of the touchscreen drivers
|
||||
0 -> 20 mA (typical 35mA max)
|
||||
1 -> 50 mA (typical 80 mA max)
|
||||
|
||||
Optional properties common with MFD (deprecated):
|
||||
- st,sample-time : ADC conversion time in number of clock.
|
||||
0 -> 36 clocks
|
||||
1 -> 44 clocks
|
||||
2 -> 56 clocks
|
||||
3 -> 64 clocks
|
||||
4 -> 80 clocks (recommended)
|
||||
5 -> 96 clocks
|
||||
6 -> 124 clocks
|
||||
- st,mod-12b : ADC Bit mode
|
||||
0 -> 10bit ADC
|
||||
1 -> 12bit ADC
|
||||
- st,ref-sel : ADC reference source
|
||||
0 -> internal
|
||||
1 -> external
|
||||
- st,adc-freq : ADC Clock speed
|
||||
0 -> 1.625 MHz
|
||||
1 -> 3.25 MHz
|
||||
2 || 3 -> 6.5 MHz
|
||||
|
||||
Node should be child node of stmpe node to which it belongs.
|
||||
|
||||
Note that common ADC settings of stmpe_touchscreen (child) will take precedence
|
||||
over the settings done in MFD.
|
||||
|
||||
Example:
|
||||
|
||||
stmpe811@41 {
|
||||
compatible = "st,stmpe811";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_touch_int>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0x41>;
|
||||
interrupts = <10 IRQ_TYPE_LEVEL_LOW>;
|
||||
interrupt-parent = <&gpio4>;
|
||||
interrupt-controller;
|
||||
id = <0>;
|
||||
blocks = <0x5>;
|
||||
irq-trigger = <0x1>;
|
||||
/* Common ADC settings */
|
||||
/* 3.25 MHz ADC clock speed */
|
||||
st,adc-freq = <1>;
|
||||
/* 12-bit ADC */
|
||||
st,mod-12b = <1>;
|
||||
/* internal ADC reference */
|
||||
st,ref-sel = <0>;
|
||||
/* ADC converstion time: 80 clocks */
|
||||
st,sample-time = <4>;
|
||||
|
||||
stmpe_touchscreen {
|
||||
compatible = "st,stmpe-ts";
|
||||
reg = <0>;
|
||||
/* 8 sample average control */
|
||||
st,ave-ctrl = <3>;
|
||||
/* 5 ms touch detect interrupt delay */
|
||||
st,touch-det-delay = <5>;
|
||||
/* 1 ms panel driver settling time */
|
||||
st,settling = <3>;
|
||||
/* 7 length fractional part in z */
|
||||
st,fraction-z = <7>;
|
||||
/*
|
||||
* 50 mA typical 80 mA max touchscreen drivers
|
||||
* current limit value
|
||||
*/
|
||||
st,i-drive = <1>;
|
||||
};
|
||||
stmpe_adc {
|
||||
compatible = "st,stmpe-adc";
|
||||
st,norequest-mask = <0x0F>;
|
||||
};
|
||||
};
|
23
bindings/input/touchscreen/sx8654.txt
Normal file
23
bindings/input/touchscreen/sx8654.txt
Normal file
@@ -0,0 +1,23 @@
|
||||
* Semtech SX8654 I2C Touchscreen Controller
|
||||
|
||||
Required properties:
|
||||
- compatible: must be one of the following, depending on the model:
|
||||
"semtech,sx8650"
|
||||
"semtech,sx8654"
|
||||
"semtech,sx8655"
|
||||
"semtech,sx8656"
|
||||
- reg: i2c slave address
|
||||
- interrupts: touch controller interrupt
|
||||
|
||||
Optional properties:
|
||||
- reset-gpios: GPIO specification for the NRST input
|
||||
|
||||
Example:
|
||||
|
||||
sx8654@48 {
|
||||
compatible = "semtech,sx8654";
|
||||
reg = <0x48>;
|
||||
interrupt-parent = <&gpio6>;
|
||||
interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
|
||||
reset-gpios = <&gpio4 2 GPIO_ACTIVE_LOW>;
|
||||
};
|
76
bindings/input/touchscreen/ti,am3359-tsc.yaml
Normal file
76
bindings/input/touchscreen/ti,am3359-tsc.yaml
Normal file
@@ -0,0 +1,76 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/input/touchscreen/ti,am3359-tsc.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: TI AM3359 Touchscreen controller
|
||||
|
||||
maintainers:
|
||||
- Miquel Raynal <miquel.raynal@bootlin.com>
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: ti,am3359-tsc
|
||||
|
||||
ti,wires:
|
||||
description: Wires refer to application modes i.e. 4/5/8 wire touchscreen
|
||||
support on the platform.
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
enum: [4, 5, 8]
|
||||
|
||||
ti,x-plate-resistance:
|
||||
description: X plate resistance
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
|
||||
ti,coordinate-readouts:
|
||||
description: The sequencer supports a total of 16 programmable steps. Each
|
||||
step is used to read a single coordinate. A single readout is enough but
|
||||
multiple reads can increase the quality. A value of 5 means, 5 reads for
|
||||
X, 5 for Y and 2 for Z (always). This utilises 12 of the 16 software steps
|
||||
available. The remaining 4 can be used by the ADC.
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
minimum: 1
|
||||
maximum: 6
|
||||
|
||||
ti,wire-config:
|
||||
description: Different boards could have a different order for connecting
|
||||
wires on touchscreen. We need to provide an 8-bit number where the
|
||||
first four bits represent the analog lines and the next 4 bits represent
|
||||
positive/negative terminal on that input line. Notations to represent the
|
||||
input lines and terminals respectively are as follows, AIN0 = 0, AIN1 = 1
|
||||
and so on until AIN7 = 7. XP = 0, XN = 1, YP = 2, YN = 3.
|
||||
$ref: /schemas/types.yaml#/definitions/uint32-array
|
||||
minItems: 4
|
||||
maxItems: 8
|
||||
|
||||
ti,charge-delay:
|
||||
description: Length of touch screen charge delay step in terms of ADC clock
|
||||
cycles. Charge delay value should be large in order to avoid false pen-up
|
||||
events. This value effects the overall sampling speed, hence need to be
|
||||
kept as low as possible, while avoiding false pen-up event. Start from a
|
||||
lower value, say 0x400, and increase value until false pen-up events are
|
||||
avoided. The pen-up detection happens immediately after the charge step,
|
||||
so this does in fact function as a hardware knob for adjusting the amount
|
||||
of "settling time".
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- ti,wires
|
||||
- ti,x-plate-resistance
|
||||
- ti,coordinate-readouts
|
||||
- ti,wire-config
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
tsc {
|
||||
compatible = "ti,am3359-tsc";
|
||||
ti,wires = <4>;
|
||||
ti,x-plate-resistance = <200>;
|
||||
ti,coordinate-readouts = <5>;
|
||||
ti,wire-config = <0x00 0x11 0x22 0x33>;
|
||||
ti,charge-delay = <0x400>;
|
||||
};
|
128
bindings/input/touchscreen/ti,tsc2005.yaml
Normal file
128
bindings/input/touchscreen/ti,tsc2005.yaml
Normal file
@@ -0,0 +1,128 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/input/touchscreen/ti,tsc2005.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Texas Instruments TSC2004 and TSC2005 touchscreen controller bindings
|
||||
|
||||
maintainers:
|
||||
- Marek Vasut <marex@denx.de>
|
||||
- Michael Welling <mwelling@ieee.org>
|
||||
|
||||
properties:
|
||||
$nodename:
|
||||
pattern: "^touchscreen(@.*)?$"
|
||||
|
||||
compatible:
|
||||
enum:
|
||||
- ti,tsc2004
|
||||
- ti,tsc2005
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
description: |
|
||||
I2C address when used on the I2C bus, or the SPI chip select index
|
||||
when used on the SPI bus
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
reset-gpios:
|
||||
maxItems: 1
|
||||
description: GPIO specifier for the controller reset line
|
||||
|
||||
spi-max-frequency:
|
||||
description: TSC2005 SPI bus clock frequency.
|
||||
maximum: 25000000
|
||||
|
||||
ti,x-plate-ohms:
|
||||
description: resistance of the touchscreen's X plates in ohm (defaults to 280)
|
||||
|
||||
ti,esd-recovery-timeout-ms:
|
||||
description: |
|
||||
if the touchscreen does not respond after the configured time
|
||||
(in milli seconds), the driver will reset it. This is disabled
|
||||
by default.
|
||||
|
||||
vio-supply:
|
||||
description: Regulator specifier
|
||||
|
||||
touchscreen-fuzz-pressure: true
|
||||
touchscreen-fuzz-x: true
|
||||
touchscreen-fuzz-y: true
|
||||
touchscreen-max-pressure: true
|
||||
touchscreen-size-x: true
|
||||
touchscreen-size-y: true
|
||||
|
||||
allOf:
|
||||
- $ref: touchscreen.yaml#
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
const: ti,tsc2004
|
||||
then:
|
||||
properties:
|
||||
spi-max-frequency: false
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- interrupts
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
touchscreen@48 {
|
||||
compatible = "ti,tsc2004";
|
||||
reg = <0x48>;
|
||||
vio-supply = <&vio>;
|
||||
|
||||
reset-gpios = <&gpio4 8 GPIO_ACTIVE_HIGH>;
|
||||
interrupts-extended = <&gpio1 27 IRQ_TYPE_EDGE_RISING>;
|
||||
|
||||
touchscreen-fuzz-x = <4>;
|
||||
touchscreen-fuzz-y = <7>;
|
||||
touchscreen-fuzz-pressure = <2>;
|
||||
touchscreen-size-x = <4096>;
|
||||
touchscreen-size-y = <4096>;
|
||||
touchscreen-max-pressure = <2048>;
|
||||
|
||||
ti,x-plate-ohms = <280>;
|
||||
ti,esd-recovery-timeout-ms = <8000>;
|
||||
};
|
||||
};
|
||||
- |
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
spi {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
touchscreen@0 {
|
||||
compatible = "ti,tsc2005";
|
||||
spi-max-frequency = <6000000>;
|
||||
reg = <0>;
|
||||
|
||||
vio-supply = <&vio>;
|
||||
|
||||
reset-gpios = <&gpio4 8 GPIO_ACTIVE_HIGH>; /* 104 */
|
||||
interrupts-extended = <&gpio4 4 IRQ_TYPE_EDGE_RISING>; /* 100 */
|
||||
|
||||
touchscreen-fuzz-x = <4>;
|
||||
touchscreen-fuzz-y = <7>;
|
||||
touchscreen-fuzz-pressure = <2>;
|
||||
touchscreen-size-x = <4096>;
|
||||
touchscreen-size-y = <4096>;
|
||||
touchscreen-max-pressure = <2048>;
|
||||
|
||||
ti,x-plate-ohms = <280>;
|
||||
ti,esd-recovery-timeout-ms = <8000>;
|
||||
};
|
||||
};
|
1
bindings/input/touchscreen/touchscreen.txt
Normal file
1
bindings/input/touchscreen/touchscreen.txt
Normal file
@@ -0,0 +1 @@
|
||||
See touchscreen.yaml
|
89
bindings/input/touchscreen/touchscreen.yaml
Normal file
89
bindings/input/touchscreen/touchscreen.yaml
Normal file
@@ -0,0 +1,89 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/input/touchscreen/touchscreen.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Common touchscreen Bindings
|
||||
|
||||
maintainers:
|
||||
- Dmitry Torokhov <dmitry.torokhov@gmail.com>
|
||||
|
||||
properties:
|
||||
touchscreen-min-x:
|
||||
description: minimum x coordinate reported
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
default: 0
|
||||
|
||||
touchscreen-min-y:
|
||||
description: minimum y coordinate reported
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
default: 0
|
||||
|
||||
touchscreen-size-x:
|
||||
description: horizontal resolution of touchscreen (maximum x coordinate reported + 1)
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
|
||||
touchscreen-size-y:
|
||||
description: vertical resolution of touchscreen (maximum y coordinate reported + 1)
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
|
||||
touchscreen-max-pressure:
|
||||
description: maximum reported pressure (arbitrary range dependent on the controller)
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
|
||||
touchscreen-min-pressure:
|
||||
description: minimum pressure on the touchscreen to be achieved in order
|
||||
for the touchscreen driver to report a touch event.
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
|
||||
touchscreen-fuzz-x:
|
||||
description: horizontal noise value of the absolute input device (in pixels)
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
|
||||
touchscreen-fuzz-y:
|
||||
description: vertical noise value of the absolute input device (in pixels)
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
|
||||
touchscreen-fuzz-pressure:
|
||||
description: pressure noise value of the absolute input device (arbitrary
|
||||
range dependent on the controller)
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
|
||||
touchscreen-average-samples:
|
||||
description: Number of data samples which are averaged for each read (valid
|
||||
values dependent on the controller)
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
|
||||
touchscreen-inverted-x:
|
||||
description: X axis is inverted
|
||||
type: boolean
|
||||
|
||||
touchscreen-inverted-y:
|
||||
description: Y axis is inverted
|
||||
type: boolean
|
||||
|
||||
touchscreen-swapped-x-y:
|
||||
description: X and Y axis are swapped
|
||||
Swapping is done after inverting the axis
|
||||
type: boolean
|
||||
|
||||
touchscreen-x-mm:
|
||||
description: horizontal length in mm of the touchscreen
|
||||
|
||||
touchscreen-y-mm:
|
||||
description: vertical length in mm of the touchscreen
|
||||
|
||||
touchscreen-x-plate-ohms:
|
||||
description: Resistance of the X-plate in Ohms
|
||||
|
||||
touchscreen-y-plate-ohms:
|
||||
description: Resistance of the Y-plate in Ohms
|
||||
|
||||
dependencies:
|
||||
touchscreen-size-x: [ touchscreen-size-y ]
|
||||
touchscreen-size-y: [ touchscreen-size-x ]
|
||||
touchscreen-x-mm: [ touchscreen-y-mm ]
|
||||
touchscreen-y-mm: [ touchscreen-x-mm ]
|
||||
|
||||
additionalProperties: true
|
11
bindings/input/touchscreen/ts4800-ts.txt
Normal file
11
bindings/input/touchscreen/ts4800-ts.txt
Normal file
@@ -0,0 +1,11 @@
|
||||
* TS-4800 Touchscreen bindings
|
||||
|
||||
Required properties:
|
||||
- compatible: must be "technologic,ts4800-ts"
|
||||
- reg: physical base address of the controller and length of memory mapped
|
||||
region.
|
||||
- syscon: phandle / integers array that points to the syscon node which
|
||||
describes the FPGA's syscon registers.
|
||||
- phandle to FPGA's syscon
|
||||
- offset to the touchscreen register
|
||||
- offset to the touchscreen enable bit
|
39
bindings/input/touchscreen/tsc2007.txt
Normal file
39
bindings/input/touchscreen/tsc2007.txt
Normal file
@@ -0,0 +1,39 @@
|
||||
* Texas Instruments tsc2007 touchscreen controller
|
||||
|
||||
Required properties:
|
||||
- compatible: must be "ti,tsc2007".
|
||||
- reg: I2C address of the chip.
|
||||
- ti,x-plate-ohms: X-plate resistance in ohms.
|
||||
|
||||
Optional properties:
|
||||
- gpios: the interrupt gpio the chip is connected to (trough the penirq pin).
|
||||
The penirq pin goes to low when the panel is touched.
|
||||
(see GPIO binding[1] for more details).
|
||||
- interrupts: (gpio) interrupt to which the chip is connected
|
||||
(see interrupt binding[0]).
|
||||
- ti,max-rt: maximum pressure.
|
||||
- ti,fuzzx: specifies the absolute input fuzz x value.
|
||||
If set, it will permit noise in the data up to +- the value given to the fuzz
|
||||
parameter, that is used to filter noise from the event stream.
|
||||
- ti,fuzzy: specifies the absolute input fuzz y value.
|
||||
- ti,fuzzz: specifies the absolute input fuzz z value.
|
||||
- ti,poll-period: how much time to wait (in milliseconds) before reading again the
|
||||
values from the tsc2007.
|
||||
|
||||
[0]: Documentation/devicetree/bindings/interrupt-controller/interrupts.txt
|
||||
[1]: Documentation/devicetree/bindings/gpio/gpio.txt
|
||||
|
||||
Example:
|
||||
&i2c1 {
|
||||
/* ... */
|
||||
tsc2007@49 {
|
||||
compatible = "ti,tsc2007";
|
||||
reg = <0x49>;
|
||||
interrupt-parent = <&gpio4>;
|
||||
interrupts = <0x0 0x8>;
|
||||
gpios = <&gpio4 0 0>;
|
||||
ti,x-plate-ohms = <180>;
|
||||
};
|
||||
|
||||
/* ... */
|
||||
};
|
30
bindings/input/touchscreen/zet6223.txt
Normal file
30
bindings/input/touchscreen/zet6223.txt
Normal file
@@ -0,0 +1,30 @@
|
||||
Zeitec ZET6223 I2C touchscreen controller
|
||||
|
||||
Required properties:
|
||||
- compatible : "zeitec,zet6223"
|
||||
- reg : I2C slave address of the chip (0x76)
|
||||
- interrupts : interrupt specification for the zet6223 interrupt
|
||||
|
||||
Optional properties:
|
||||
|
||||
- vio-supply : Specification for VIO supply (1.8V or 3.3V,
|
||||
depending on system interface needs).
|
||||
- vcc-supply : Specification for 3.3V VCC supply.
|
||||
- touchscreen-size-x : See touchscreen.txt
|
||||
- touchscreen-size-y : See touchscreen.txt
|
||||
- touchscreen-inverted-x : See touchscreen.txt
|
||||
- touchscreen-inverted-y : See touchscreen.txt
|
||||
- touchscreen-swapped-x-y : See touchscreen.txt
|
||||
|
||||
Example:
|
||||
|
||||
i2c@00000000 {
|
||||
|
||||
zet6223: touchscreen@76 {
|
||||
compatible = "zeitec,zet6223";
|
||||
reg = <0x76>;
|
||||
interrupt-parent = <&pio>;
|
||||
interrupts = <6 11 IRQ_TYPE_EDGE_FALLING>
|
||||
};
|
||||
|
||||
};
|
34
bindings/input/touchscreen/zforce_ts.txt
Normal file
34
bindings/input/touchscreen/zforce_ts.txt
Normal file
@@ -0,0 +1,34 @@
|
||||
* Neonode infrared touchscreen controller
|
||||
|
||||
Required properties:
|
||||
- compatible: must be "neonode,zforce"
|
||||
- reg: I2C address of the chip
|
||||
- interrupts: interrupt to which the chip is connected
|
||||
- reset-gpios: reset gpio the chip is connected to
|
||||
- x-size: horizontal resolution of touchscreen
|
||||
- y-size: vertical resolution of touchscreen
|
||||
|
||||
Optional properties:
|
||||
- irq-gpios : interrupt gpio the chip is connected to
|
||||
- vdd-supply: Regulator controlling the controller supply
|
||||
|
||||
Example:
|
||||
|
||||
i2c@00000000 {
|
||||
/* ... */
|
||||
|
||||
zforce_ts@50 {
|
||||
compatible = "neonode,zforce";
|
||||
reg = <0x50>;
|
||||
interrupts = <2 0>;
|
||||
vdd-supply = <®_zforce_vdd>;
|
||||
|
||||
reset-gpios = <&gpio5 9 0>; /* RST */
|
||||
irq-gpios = <&gpio5 6 0>; /* IRQ, optional */
|
||||
|
||||
x-size = <800>;
|
||||
y-size = <600>;
|
||||
};
|
||||
|
||||
/* ... */
|
||||
};
|
115
bindings/input/touchscreen/zinitix,bt400.yaml
Normal file
115
bindings/input/touchscreen/zinitix,bt400.yaml
Normal file
@@ -0,0 +1,115 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/input/touchscreen/zinitix,bt400.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Zinitix BT4xx and BT5xx series touchscreen controller bindings
|
||||
|
||||
description: The Zinitix BT4xx and BT5xx series of touchscreen controllers
|
||||
are Korea-produced touchscreens with embedded microcontrollers. The
|
||||
BT4xx series was produced 2010-2013 and the BT5xx series 2013-2014.
|
||||
|
||||
maintainers:
|
||||
- Michael Srba <Michael.Srba@seznam.cz>
|
||||
- Linus Walleij <linus.walleij@linaro.org>
|
||||
|
||||
allOf:
|
||||
- $ref: touchscreen.yaml#
|
||||
|
||||
properties:
|
||||
$nodename:
|
||||
pattern: "^touchscreen(@.*)?$"
|
||||
|
||||
compatible:
|
||||
enum:
|
||||
- zinitix,bt402
|
||||
- zinitix,bt403
|
||||
- zinitix,bt404
|
||||
- zinitix,bt412
|
||||
- zinitix,bt413
|
||||
- zinitix,bt431
|
||||
- zinitix,bt432
|
||||
- zinitix,bt531
|
||||
- zinitix,bt532
|
||||
- zinitix,bt538
|
||||
- zinitix,bt541
|
||||
- zinitix,bt548
|
||||
- zinitix,bt554
|
||||
- zinitix,at100
|
||||
|
||||
reg:
|
||||
description: I2C address on the I2C bus
|
||||
|
||||
clock-frequency:
|
||||
description: I2C client clock frequency, defined for host when using
|
||||
the device on the I2C bus
|
||||
minimum: 0
|
||||
maximum: 400000
|
||||
|
||||
interrupts:
|
||||
description: Interrupt to host
|
||||
maxItems: 1
|
||||
|
||||
vcca-supply:
|
||||
description: Analog power supply regulator on the VCCA pin
|
||||
|
||||
vdd-supply:
|
||||
description: Digital power supply regulator on the VDD pin.
|
||||
In older device trees this can be the accidental name for the analog
|
||||
supply on the VCCA pin, and in that case the deprecated vddo-supply is
|
||||
used for the digital power supply.
|
||||
|
||||
vddo-supply:
|
||||
description: Deprecated name for the digital power supply, use vdd-supply
|
||||
as this reflects the real name of the pin. If this supply is present,
|
||||
the vdd-supply represents VCCA instead of VDD. Implementers should first
|
||||
check for this property, and if it is present assume that the vdd-supply
|
||||
represents the analog supply.
|
||||
deprecated: true
|
||||
|
||||
reset-gpios:
|
||||
description: Reset line for the touchscreen, should be tagged
|
||||
as GPIO_ACTIVE_LOW
|
||||
|
||||
zinitix,mode:
|
||||
description: Mode of reporting touch points. Some modes may not work
|
||||
with a particular ts firmware for unknown reasons. Available modes are
|
||||
1 and 2. Mode 2 is the default and preferred.
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
enum: [1, 2]
|
||||
|
||||
touchscreen-size-x: true
|
||||
touchscreen-size-y: true
|
||||
touchscreen-fuzz-x: true
|
||||
touchscreen-fuzz-y: true
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- interrupts
|
||||
- touchscreen-size-x
|
||||
- touchscreen-size-y
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
touchscreen@20 {
|
||||
compatible = "zinitix,bt541";
|
||||
reg = <0x20>;
|
||||
interrupt-parent = <&gpio>;
|
||||
interrupts = <13 IRQ_TYPE_EDGE_FALLING>;
|
||||
vcca-supply = <®_vcca_tsp>;
|
||||
vdd-supply = <®_vdd_tsp>;
|
||||
touchscreen-size-x = <540>;
|
||||
touchscreen-size-y = <960>;
|
||||
zinitix,mode = <2>;
|
||||
};
|
||||
};
|
Reference in New Issue
Block a user