[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20240703-adp5588_gpio_support-v5-3-49fcead0d390@analog.com>
Date: Wed, 03 Jul 2024 11:58:16 +0100
From: Utsav Agarwal via B4 Relay <devnull+utsav.agarwal.analog.com@...nel.org>
To: Utsav Agarwal <utsav.agarwal@...log.com>,
Michael Hennerich <michael.hennerich@...log.com>,
Dmitry Torokhov <dmitry.torokhov@...il.com>, Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>,
Nuno Sá <nuno.sa@...log.com>
Cc: linux-input@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org,
Arturs Artamonovs <arturs.artamonovs@...log.com>,
Vasileios Bimpikas <vasileios.bimpikas@...log.com>,
Oliver Gaskell <oliver.gaskell@...log.com>
Subject: [PATCH v5 3/3] dt-bindings: input: Update dtbinding for adp5588
From: Utsav Agarwal <utsav.agarwal@...log.com>
Updating dt bindings for adp5588. Since the device can now function in a
purely gpio mode, the following keypad specific properties are now made
optional:
- interrupts
- keypad,num-rows
- keypad,num-columns
- linux,keymap
However since the above properties are required to be specified when
configuring the device as a keypad, dependencies have been added
such that specifying either one would require the remaining as well.
Signed-off-by: Utsav Agarwal <utsav.agarwal@...log.com>
---
.../devicetree/bindings/input/adi,adp5588.yaml | 33 ++++++++++++++++++----
1 file changed, 28 insertions(+), 5 deletions(-)
diff --git a/Documentation/devicetree/bindings/input/adi,adp5588.yaml b/Documentation/devicetree/bindings/input/adi,adp5588.yaml
index 26ea66834ae2..6c06464f822b 100644
--- a/Documentation/devicetree/bindings/input/adi,adp5588.yaml
+++ b/Documentation/devicetree/bindings/input/adi,adp5588.yaml
@@ -49,7 +49,10 @@ properties:
interrupt-controller:
description:
This property applies if either keypad,num-rows lower than 8 or
- keypad,num-columns lower than 10.
+ keypad,num-columns lower than 10. This property does not apply if
+ keypad,num-rows or keypad,num-columns are not specified since the
+ device then acts as gpio only, during which interrupts are not
+ utilized.
'#interrupt-cells':
const: 2
@@ -65,13 +68,15 @@ properties:
minItems: 1
maxItems: 2
+dependencies:
+ keypad,num-rows: ["keypad,num-columns"]
+ keypad,num-cols: ["keypad,num-rows"]
+ linux,keymap: ["keypad,num-rows"]
+ interrupts: ["linux,keymap"]
+
required:
- compatible
- reg
- - interrupts
- - keypad,num-rows
- - keypad,num-columns
- - linux,keymap
unevaluatedProperties: false
@@ -108,4 +113,22 @@ examples:
>;
};
};
+
+ - |
+ #include <dt-bindings/interrupt-controller/irq.h>
+ #include <dt-bindings/input/input.h>
+ #include <dt-bindings/gpio/gpio.h>
+
+ i2c {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ gpio@34 {
+ compatible = "adi,adp5588";
+ reg = <0x34>;
+
+ #gpio-cells = <2>;
+ gpio-controller;
+ };
+ };
+
...
--
2.34.1
Powered by blists - more mailing lists