Merge tag 'block-6.13-20242901' of git://git.kernel.dk/linux
[drm/drm-misc.git] / Documentation / devicetree / bindings / input / touchscreen / fsl,imx6ul-tsc.yaml
blob678756ad0f929accbc905c97f50ffdc88e1c812d
1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/input/touchscreen/fsl,imx6ul-tsc.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Freescale i.MX6UL Touch Controller
9 maintainers:
10   - Haibo Chen <haibo.chen@nxp.com>
11   - Shawn Guo <shawnguo@kernel.org>
12   - Sascha Hauer <s.hauer@pengutronix.de>
14 properties:
15   compatible:
16     const: fsl,imx6ul-tsc
18   reg:
19     items:
20       - description: touch controller address
21       - description: ADC2 address
23   interrupts:
24     items:
25       - description: touch controller address
26       - description: ADC2 address
28   clocks:
29     maxItems: 2
31   clock-names:
32     items:
33       - const: tsc
34       - const: adc
36   xnur-gpios:
37     maxItems: 1
38     description:
39       The X- gpio this controller connect to. This xnur-gpio returns to
40       low once the finger leave the touch screen (The last touch event
41       the touch controller capture).
43   measure-delay-time:
44     $ref: /schemas/types.yaml#/definitions/uint32
45     description:
46       The value of measure delay time. Before X-axis or Y-axis measurement,
47       the screen need some time before even potential distribution ready.
48     default: 0xffff
49     minimum: 0
50     maximum: 0xffffff
52   pre-charge-time:
53     $ref: /schemas/types.yaml#/definitions/uint32
54     description:
55       The touch screen need some time to precharge.
56     default: 0xfff
57     minimum: 0
58     maximum: 0xffffffff
60   touchscreen-average-samples:
61     $ref: /schemas/types.yaml#/definitions/uint32
62     description: Number of data samples which are averaged for each read.
63     enum: [ 1, 4, 8, 16, 32 ]
65 required:
66   - compatible
67   - reg
68   - interrupts
69   - clocks
70   - clock-names
71   - xnur-gpios
73 allOf:
74   - $ref: touchscreen.yaml#
76 additionalProperties: false
78 examples:
79   - |
80     #include <dt-bindings/interrupt-controller/arm-gic.h>
81     #include <dt-bindings/clock/imx6ul-clock.h>
82     #include <dt-bindings/gpio/gpio.h>
83     touchscreen@2040000 {
84         compatible = "fsl,imx6ul-tsc";
85         reg = <0x02040000 0x4000>, <0x0219c000 0x4000>;
86         interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
87                      <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
88         clocks = <&clks IMX6UL_CLK_IPG>,
89                  <&clks IMX6UL_CLK_ADC2>;
90         clock-names = "tsc", "adc";
91         pinctrl-names = "default";
92         pinctrl-0 = <&pinctrl_tsc>;
93         xnur-gpios = <&gpio1 3 GPIO_ACTIVE_LOW>;
94         measure-delay-time = <0xfff>;
95         pre-charge-time = <0xffff>;
96         touchscreen-average-samples = <32>;
97     };