public inbox for linux-input@vger.kernel.org
 help / color / mirror / Atom feed
From: Conor Dooley <conor@kernel.org>
To: utsav.agarwal@analog.com
Cc: "Michael Hennerich" <michael.hennerich@analog.com>,
	"Dmitry Torokhov" <dmitry.torokhov@gmail.com>,
	"Rob Herring" <robh@kernel.org>,
	"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
	"Conor Dooley" <conor+dt@kernel.org>,
	"Nuno Sá" <nuno.sa@analog.com>,
	linux-input@vger.kernel.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	"Arturs Artamonovs" <arturs.artamonovs@analog.com>,
	"Vasileios Bimpikas" <vasileios.bimpikas@analog.com>,
	"Oliver Gaskell" <oliver.gaskell@analog.com>
Subject: Re: [PATCH v5 3/3] dt-bindings: input: Update dtbinding for adp5588
Date: Wed, 3 Jul 2024 16:20:21 +0100	[thread overview]
Message-ID: <20240703-safehouse-flame-0b751b853623@spud> (raw)
In-Reply-To: <20240703-adp5588_gpio_support-v5-3-49fcead0d390@analog.com>

[-- Attachment #1: Type: text/plain, Size: 3186 bytes --]

On Wed, Jul 03, 2024 at 11:58:16AM +0100, Utsav Agarwal via B4 Relay wrote:
> From: Utsav Agarwal <utsav.agarwal@analog.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@analog.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"]

Is what you've got here sufficient? Adding "keypad,num-rows" won't
mandate "linux,keymap" which I think is wrong. I think all 3 entries
here need to contain both of the other two.

> +  interrupts: ["linux,keymap"]

I still don't understand why interrupts are only allowed when the keymap
is present. I'd cover the interrupts with something like

if:
  required:
    - linux,keymap
  then:
    required:
      - interrupts

so that interrupts can be used while not in keypad mode. Unless of
course there's something (unmentioned in this patch) that prevents that.

Thanks,
Conor.

> +
>  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
> 
> 

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

  reply	other threads:[~2024-07-03 15:20 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-07-03 10:58 [PATCH v5 0/3] adp5588-keys: Support for dedicated gpio operation Utsav Agarwal via B4 Relay
2024-07-03 10:58 ` [PATCH v5 1/3] iInput: adp5588-keys - use guard notation when acquiring mutexes Utsav Agarwal via B4 Relay
2024-07-03 10:58 ` [PATCH v5 2/3] Input: adp5588-keys - add support for pure gpio Utsav Agarwal via B4 Relay
2024-07-03 10:58 ` [PATCH v5 3/3] dt-bindings: input: Update dtbinding for adp5588 Utsav Agarwal via B4 Relay
2024-07-03 15:20   ` Conor Dooley [this message]
2024-07-03 15:55     ` Agarwal, Utsav
2024-07-03 15:57       ` Conor Dooley
2024-07-04  7:19         ` Nuno Sá
2024-07-04  8:47           ` Agarwal, Utsav

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240703-safehouse-flame-0b751b853623@spud \
    --to=conor@kernel.org \
    --cc=arturs.artamonovs@analog.com \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=dmitry.torokhov@gmail.com \
    --cc=krzk+dt@kernel.org \
    --cc=linux-input@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=michael.hennerich@analog.com \
    --cc=nuno.sa@analog.com \
    --cc=oliver.gaskell@analog.com \
    --cc=robh@kernel.org \
    --cc=utsav.agarwal@analog.com \
    --cc=vasileios.bimpikas@analog.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox