Hi Anshul, On Tue, Oct 17, 2023 at 09:13:44AM +0530, Anshul Dalal wrote: > Adds bindings for the Adafruit Seesaw Gamepad. > > The gamepad functions as an i2c device with the default address of 0x50 > and has an IRQ pin that can be enabled in the driver to allow for a rising > edge trigger on each button press or joystick movement. > > Product page: > https://www.adafruit.com/product/5743 > Arduino driver: > https://github.com/adafruit/Adafruit_Seesaw > > Reviewed-by: Conor Dooley <conor.dooley@xxxxxxxxxxxxx> > Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx> > Signed-off-by: Anshul Dalal <anshulusr@xxxxxxxxx> Perhaps this ship has sailed, but is there any reason this simple device cannot be added to Documentation/devicetree/bindings/trivial-devices.yaml as opposed to having its own binding? It has no vendor-specific properties, and the only properties are the standard properties already understood by the I2C core. In case I have misunderstood, please let me know. > --- > > Changes for v5: > - Added link to the datasheet > > Changes for v4: > - Fixed the URI for the id field > - Added `interrupts` property > > Changes for v3: > - Updated id field to reflect updated file name from previous version > - Added `reg` property > > Changes for v2: > - Renamed file to `adafruit,seesaw-gamepad.yaml` > - Removed quotes for `$id` and `$schema` > - Removed "Bindings for" from the description > - Changed node name to the generic name "joystick" > - Changed compatible to 'adafruit,seesaw-gamepad' instead of > 'adafruit,seesaw_gamepad' > > .../input/adafruit,seesaw-gamepad.yaml | 60 +++++++++++++++++++ > 1 file changed, 60 insertions(+) > create mode 100644 Documentation/devicetree/bindings/input/adafruit,seesaw-gamepad.yaml > > diff --git a/Documentation/devicetree/bindings/input/adafruit,seesaw-gamepad.yaml b/Documentation/devicetree/bindings/input/adafruit,seesaw-gamepad.yaml > new file mode 100644 > index 000000000000..3f0d1c5a3b9b > --- /dev/null > +++ b/Documentation/devicetree/bindings/input/adafruit,seesaw-gamepad.yaml > @@ -0,0 +1,60 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/input/adafruit,seesaw-gamepad.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Adafruit Mini I2C Gamepad with seesaw > + > +maintainers: > + - Anshul Dalal <anshulusr@xxxxxxxxx> > + > +description: | > + Adafruit Mini I2C Gamepad > + > + +-----------------------------+ > + | ___ | > + | / \ (X) | > + | | S | __ __ (Y) (A) | > + | \___/ |ST| |SE| (B) | > + | | > + +-----------------------------+ > + > + S -> 10-bit percision bidirectional analog joystick > + ST -> Start > + SE -> Select > + X, A, B, Y -> Digital action buttons > + > + Datasheet: https://cdn-learn.adafruit.com/downloads/pdf/gamepad-qt.pdf > + Product page: https://www.adafruit.com/product/5743 > + Arduino Driver: https://github.com/adafruit/Adafruit_Seesaw > + > +properties: > + compatible: > + const: adafruit,seesaw-gamepad > + > + reg: > + maxItems: 1 > + > + interrupts: > + maxItems: 1 > + description: > + The gamepad's IRQ pin triggers a rising edge if interrupts are enabled. > + > +required: > + - compatible > + - reg > + > +additionalProperties: false > + > +examples: > + - | > + i2c { > + #address-cells = <1>; > + #size-cells = <0>; > + > + joystick@50 { > + compatible = "adafruit,seesaw-gamepad"; > + reg = <0x50>; > + }; > + }; > -- > 2.42.0 > Kind regards, Jeff LaBundy