]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
dt-bindings: input: touchscreen: convert ads7846.txt to yaml
authorFrank Li <Frank.Li@nxp.com>
Mon, 26 Aug 2024 16:22:56 +0000 (12:22 -0400)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Mon, 26 Aug 2024 17:54:31 +0000 (10:54 -0700)
Convert binding doc ads7846.txt to yaml format.
Additional change:
- add ref to touchscreen.yaml and spi-peripheral-props.yaml.
- use common node name touchscreen.
- sort ti properties alphabetically.
- sort common properties alphabetically.
- sort compatible string alphabetically.
- remove vcc-supply from required list.
- deprecated ti,x-min, ti,y-min

Fix below warning: arch/arm64/boot/dts/freescale/imx8mm-var-som-symphony.dtb: touchscreen@0:
ti,x-min: b'\x00}' is not of type 'object', 'array', 'boolean', 'null'

Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Reviewed-by: Marek Vasut <marex@denx.de>
Signed-off-by: Frank Li <Frank.Li@nxp.com>
Link: https://lore.kernel.org/r/20240826162302.960732-1-Frank.Li@nxp.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Documentation/devicetree/bindings/input/touchscreen/ads7846.txt [deleted file]
Documentation/devicetree/bindings/input/touchscreen/ti,ads7843.yaml [new file with mode: 0644]
Documentation/devicetree/bindings/power/wakeup-source.txt

diff --git a/Documentation/devicetree/bindings/input/touchscreen/ads7846.txt b/Documentation/devicetree/bindings/input/touchscreen/ads7846.txt
deleted file mode 100644 (file)
index 399c877..0000000
+++ /dev/null
@@ -1,107 +0,0 @@
-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.
-       ti,hsync-gpios                  GPIO line to poll for hsync
-       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 = <&reg_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;
-               };
-       };
diff --git a/Documentation/devicetree/bindings/input/touchscreen/ti,ads7843.yaml b/Documentation/devicetree/bindings/input/touchscreen/ti,ads7843.yaml
new file mode 100644 (file)
index 0000000..6049217
--- /dev/null
@@ -0,0 +1,183 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/input/touchscreen/ti,ads7843.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: TI's SPI driven touch screen controllers
+
+maintainers:
+  - Alexander Stein <alexander.stein@ew.tq-group.com>
+  - Dmitry Torokhov <dmitry.torokhov@gmail.com>
+  - Marek Vasut <marex@denx.de>
+
+description:
+  TI's ADS7843, ADS7845, ADS7846, ADS7873, TSC2046 SPI driven touch screen
+  controllers.
+
+properties:
+  compatible:
+    enum:
+      - ti,ads7843
+      - ti,ads7845
+      - ti,ads7846
+      - ti,ads7873
+      - ti,tsc2046
+
+  interrupts:
+    maxItems: 1
+
+  pendown-gpio:
+    maxItems: 1
+    description:
+      GPIO handle describing the pin the !PENIRQ line is connected to.
+
+  vcc-supply:
+    description:
+      A regulator node for the supply voltage.
+
+  wakeup-source: true
+
+  ti,debounce-max:
+    deprecated: true
+    $ref: /schemas/types.yaml#/definitions/uint16
+    description:
+      Max number of additional readings per sample.
+
+  ti,debounce-rep:
+    $ref: /schemas/types.yaml#/definitions/uint16
+    description:
+      Additional consecutive good readings required after the first two.
+
+  ti,debounce-tol:
+    $ref: /schemas/types.yaml#/definitions/uint16
+    description:
+      Tolerance used for filtering.
+
+  ti,hsync-gpios:
+    maxItems: 1
+    description:
+      GPIO line to poll for hsync.
+
+  ti,keep-vref-on:
+    $ref: /schemas/types.yaml#/definitions/flag
+    description:
+      Set to keep Vref on for differential measurements as well.
+
+  ti,pendown-gpio-debounce:
+    $ref: /schemas/types.yaml#/definitions/uint32
+    description:
+      Platform specific debounce time for the pendown-gpio.
+
+  ti,penirq-recheck-delay-usecs:
+    $ref: /schemas/types.yaml#/definitions/uint16
+    description:
+      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.
+
+  ti,pressure-max:
+    deprecated: true
+    $ref: /schemas/types.yaml#/definitions/uint16
+    description:
+      Maximum reported pressure value.
+
+  ti,pressure-min:
+    deprecated: true
+    $ref: /schemas/types.yaml#/definitions/uint16
+    description:
+      Minimum reported pressure value (threshold).
+
+  ti,settle-delay-usec:
+    $ref: /schemas/types.yaml#/definitions/uint16
+    description:
+      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.
+
+  ti,swap-xy:
+    deprecated: true
+    $ref: /schemas/types.yaml#/definitions/flag
+    description:
+      Swap x and y axis.
+
+  ti,vref-delay-usecs:
+    $ref: /schemas/types.yaml#/definitions/uint16
+    description:
+      Vref supply delay in usecs, 0 for external Vref.
+
+  ti,vref-mv:
+    $ref: /schemas/types.yaml#/definitions/uint16
+    description:
+      The VREF voltage, in millivolts.
+      Set to 0 to use internal references (ADS7846).
+
+  ti,x-plate-ohms:
+    $ref: /schemas/types.yaml#/definitions/uint16
+    description:
+      Resistance of the X-plate, in Ohms.
+
+  ti,x-max:
+    deprecated: true
+    $ref: /schemas/types.yaml#/definitions/uint16
+    description:
+      Maximum value on the X axis.
+
+  ti,x-min:
+    deprecated: true
+    $ref: /schemas/types.yaml#/definitions/uint16
+    description:
+      Minimum value on the X axis.
+
+  ti,y-plate-ohms:
+    $ref: /schemas/types.yaml#/definitions/uint16
+    description:
+      Resistance of the Y-plate, in Ohms.
+
+  ti,y-max:
+    deprecated: true
+    $ref: /schemas/types.yaml#/definitions/uint16
+    description:
+      Maximum value on the Y axis.
+
+  ti,y-min:
+    deprecated: true
+    $ref: /schemas/types.yaml#/definitions/uint16
+    description:
+      Minimum value on the Y axis.
+
+required:
+  - compatible
+  - reg
+
+allOf:
+  - $ref: touchscreen.yaml#
+  - $ref: /schemas/spi/spi-peripheral-props.yaml#
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    spi{
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        touchscreen@0 {
+           compatible = "ti,tsc2046";
+           reg = <0>;  /* CS0 */
+           interrupt-parent = <&gpio1>;
+           interrupts = <8 0>; /* BOOT6 / GPIO 8 */
+           pendown-gpio = <&gpio1 8 0>;
+           spi-max-frequency = <1000000>;
+           vcc-supply = <&reg_vcc3>;
+           wakeup-source;
+
+           ti,pressure-max = /bits/ 16 <255>;
+           ti,x-max = /bits/ 16 <8000>;
+           ti,x-min = /bits/ 16 <0>;
+           ti,x-plate-ohms = /bits/ 16 <40>;
+           ti,y-max = /bits/ 16 <4800>;
+           ti,y-min = /bits/ 16 <0>;
+       };
+    };
index a6c8978964aa163250f070aa1ead247792fffa50..9a4f8310eb67df7e53a2ad8a1bc8fc907e1f2084 100644 (file)
@@ -25,7 +25,7 @@ List of legacy properties and respective binding document
 2. "has-tpo"                   Documentation/devicetree/bindings/rtc/rtc-opal.txt
 3. "linux,wakeup"              Documentation/devicetree/bindings/input/gpio-matrix-keypad.txt
                                Documentation/devicetree/bindings/mfd/tc3589x.txt
-                               Documentation/devicetree/bindings/input/touchscreen/ads7846.txt
+                               Documentation/devicetree/bindings/input/touchscreen/ti,ads7843.yaml
 4. "linux,keypad-wakeup"       Documentation/devicetree/bindings/input/qcom,pm8xxx-keypad.txt
 5. "linux,input-wakeup"                Documentation/devicetree/bindings/input/samsung,s3c6410-keypad.yaml
 6. "nvidia,wakeup-source"      Documentation/devicetree/bindings/input/nvidia,tegra20-kbc.txt