]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
dt-bindings: input: qcom,pm8921-keypad: convert to YAML format
authorDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Thu, 28 Sep 2023 11:02:34 +0000 (14:02 +0300)
committerRob Herring <robh@kernel.org>
Mon, 30 Oct 2023 20:03:22 +0000 (15:03 -0500)
Convert the bindings for the keypad subdevices of Qualcomm PM8921 and
PM8058 PMICs from text to YAML format.

While doing the conversion also drop the linux,keypad-no-autorepeat
The property was never used by DT files. Both input and DT binding
maintainers consider that bindings should switch to assertive
(linux,autorepeat) instead of negating (no-autorepeat) property.

Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20230928110309.1212221-2-dmitry.baryshkov@linaro.org
Signed-off-by: Rob Herring <robh@kernel.org>
Documentation/devicetree/bindings/input/qcom,pm8921-keypad.yaml [new file with mode: 0644]
Documentation/devicetree/bindings/input/qcom,pm8xxx-keypad.txt [deleted file]

diff --git a/Documentation/devicetree/bindings/input/qcom,pm8921-keypad.yaml b/Documentation/devicetree/bindings/input/qcom,pm8921-keypad.yaml
new file mode 100644 (file)
index 0000000..88764ad
--- /dev/null
@@ -0,0 +1,89 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/input/qcom,pm8921-keypad.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm PM8921 PMIC KeyPad
+
+maintainers:
+  - Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
+
+allOf:
+  - $ref: input.yaml#
+  - $ref: matrix-keymap.yaml#
+
+properties:
+  compatible:
+    enum:
+      - qcom,pm8058-keypad
+      - qcom,pm8921-keypad
+
+  reg:
+    maxItems: 1
+
+  interrupts:
+    items:
+      - description: key sense
+      - description: key stuck
+
+  wakeup-source:
+    type: boolean
+    description: use any event on keypad as wakeup event
+
+  linux,keypad-wakeup:
+    type: boolean
+    deprecated: true
+    description: legacy version of the wakeup-source property
+
+  debounce:
+    description:
+      Time in microseconds that key must be pressed or
+      released for state change interrupt to trigger.
+    $ref: /schemas/types.yaml#/definitions/uint32
+
+  scan-delay:
+    $ref: /schemas/types.yaml#/definitions/uint32
+    description: time in microseconds to pause between successive scans of the
+      matrix array
+
+  row-hold:
+    $ref: /schemas/types.yaml#/definitions/uint32
+    description: time in nanoseconds to pause between scans of each row in the
+      matrix array.
+
+required:
+  - compatible
+  - reg
+  - interrupts
+  - linux,keymap
+
+unevaluatedProperties: false
+
+examples:
+  - |
+   #include <dt-bindings/input/input.h>
+   #include <dt-bindings/interrupt-controller/irq.h>
+   pmic {
+       #address-cells = <1>;
+       #size-cells = <0>;
+
+       keypad@148 {
+           compatible = "qcom,pm8921-keypad";
+           reg = <0x148>;
+           interrupt-parent = <&pmicintc>;
+           interrupts = <74 IRQ_TYPE_EDGE_RISING>, <75 IRQ_TYPE_EDGE_RISING>;
+           linux,keymap = <
+               MATRIX_KEY(0, 0, KEY_VOLUMEUP)
+               MATRIX_KEY(0, 1, KEY_VOLUMEDOWN)
+               MATRIX_KEY(0, 2, KEY_CAMERA_FOCUS)
+               MATRIX_KEY(0, 3, KEY_CAMERA)
+           >;
+           keypad,num-rows = <1>;
+           keypad,num-columns = <5>;
+           debounce = <15>;
+           scan-delay = <32>;
+           row-hold = <91500>;
+       };
+   };
+...
diff --git a/Documentation/devicetree/bindings/input/qcom,pm8xxx-keypad.txt b/Documentation/devicetree/bindings/input/qcom,pm8xxx-keypad.txt
deleted file mode 100644 (file)
index 4a9dc6b..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-Qualcomm PM8xxx PMIC Keypad
-
-PROPERTIES
-
-- compatible:
-       Usage: required
-       Value type: <string>
-       Definition: must be one of:
-                   "qcom,pm8058-keypad"
-                   "qcom,pm8921-keypad"
-
-- reg:
-       Usage: required
-       Value type: <prop-encoded-array>
-       Definition: address of keypad control register
-
-- interrupts:
-       Usage: required
-       Value type: <prop-encoded-array>
-       Definition: the first interrupt specifies the key sense interrupt
-                   and the second interrupt specifies the key stuck interrupt.
-                   The format of the specifier is defined by the binding
-                   document describing the node's interrupt parent.
-
-- linux,keymap:
-       Usage: required
-       Value type: <prop-encoded-array>
-       Definition: the linux keymap. More information can be found in
-                   input/matrix-keymap.txt.
-
-- linux,keypad-no-autorepeat:
-       Usage: optional
-       Value type: <bool>
-       Definition: don't enable autorepeat feature.
-
-- wakeup-source:
-       Usage: optional
-       Value type: <bool>
-       Definition: use any event on keypad as wakeup event.
-                   (Legacy property supported: "linux,keypad-wakeup")
-
-- keypad,num-rows:
-       Usage: required
-       Value type: <u32>
-       Definition: number of rows in the keymap. More information can be found
-                   in input/matrix-keymap.txt.
-
-- keypad,num-columns:
-       Usage: required
-       Value type: <u32>
-       Definition: number of columns in the keymap. More information can be
-                   found in input/matrix-keymap.txt.
-
-- debounce:
-       Usage: optional
-       Value type: <u32>
-       Definition: time in microseconds that key must be pressed or release
-                   for key sense interrupt to trigger.
-
-- scan-delay:
-       Usage: optional
-       Value type: <u32>
-       Definition: time in microseconds to pause between successive scans
-                   of the matrix array.
-
-- row-hold:
-       Usage: optional
-       Value type: <u32>
-       Definition: time in nanoseconds to pause between scans of each row in
-                   the matrix array.
-
-EXAMPLE
-
-       keypad@148 {
-               compatible = "qcom,pm8921-keypad";
-               reg = <0x148>;
-               interrupt-parent = <&pmicintc>;
-               interrupts = <74 1>, <75 1>;
-               linux,keymap = <
-                       MATRIX_KEY(0, 0, KEY_VOLUMEUP)
-                       MATRIX_KEY(0, 1, KEY_VOLUMEDOWN)
-                       MATRIX_KEY(0, 2, KEY_CAMERA_FOCUS)
-                       MATRIX_KEY(0, 3, KEY_CAMERA)
-                       >;
-               keypad,num-rows = <1>;
-               keypad,num-columns = <5>;
-               debounce = <15>;
-               scan-delay = <32>;
-               row-hold = <91500>;
-       };