1*dc5b5624SAnshul Dalal# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*dc5b5624SAnshul Dalal%YAML 1.2
3*dc5b5624SAnshul Dalal---
4*dc5b5624SAnshul Dalal$id: http://devicetree.org/schemas/input/adafruit,seesaw-gamepad.yaml#
5*dc5b5624SAnshul Dalal$schema: http://devicetree.org/meta-schemas/core.yaml#
6*dc5b5624SAnshul Dalal
7*dc5b5624SAnshul Dalaltitle: Adafruit Mini I2C Gamepad with seesaw
8*dc5b5624SAnshul Dalal
9*dc5b5624SAnshul Dalalmaintainers:
10*dc5b5624SAnshul Dalal  - Anshul Dalal <anshulusr@gmail.com>
11*dc5b5624SAnshul Dalal
12*dc5b5624SAnshul Dalaldescription: |
13*dc5b5624SAnshul Dalal  Adafruit Mini I2C Gamepad
14*dc5b5624SAnshul Dalal
15*dc5b5624SAnshul Dalal    +-----------------------------+
16*dc5b5624SAnshul Dalal    |   ___                       |
17*dc5b5624SAnshul Dalal    |  /   \               (X)    |
18*dc5b5624SAnshul Dalal    | |  S  |  __   __  (Y)   (A) |
19*dc5b5624SAnshul Dalal    |  \___/  |ST| |SE|    (B)    |
20*dc5b5624SAnshul Dalal    |                             |
21*dc5b5624SAnshul Dalal    +-----------------------------+
22*dc5b5624SAnshul Dalal
23*dc5b5624SAnshul Dalal  S -> 10-bit precision bidirectional analog joystick
24*dc5b5624SAnshul Dalal  ST -> Start
25*dc5b5624SAnshul Dalal  SE -> Select
26*dc5b5624SAnshul Dalal  X, A, B, Y -> Digital action buttons
27*dc5b5624SAnshul Dalal
28*dc5b5624SAnshul Dalal  Datasheet: https://cdn-learn.adafruit.com/downloads/pdf/gamepad-qt.pdf
29*dc5b5624SAnshul Dalal  Product page: https://www.adafruit.com/product/5743
30*dc5b5624SAnshul Dalal  Arduino Driver: https://github.com/adafruit/Adafruit_Seesaw
31*dc5b5624SAnshul Dalal
32*dc5b5624SAnshul Dalalproperties:
33*dc5b5624SAnshul Dalal  compatible:
34*dc5b5624SAnshul Dalal    const: adafruit,seesaw-gamepad
35*dc5b5624SAnshul Dalal
36*dc5b5624SAnshul Dalal  reg:
37*dc5b5624SAnshul Dalal    maxItems: 1
38*dc5b5624SAnshul Dalal
39*dc5b5624SAnshul Dalal  interrupts:
40*dc5b5624SAnshul Dalal    maxItems: 1
41*dc5b5624SAnshul Dalal    description:
42*dc5b5624SAnshul Dalal      The gamepad's IRQ pin triggers a rising edge if interrupts are enabled.
43*dc5b5624SAnshul Dalal
44*dc5b5624SAnshul Dalalrequired:
45*dc5b5624SAnshul Dalal  - compatible
46*dc5b5624SAnshul Dalal  - reg
47*dc5b5624SAnshul Dalal
48*dc5b5624SAnshul DalaladditionalProperties: false
49*dc5b5624SAnshul Dalal
50*dc5b5624SAnshul Dalalexamples:
51*dc5b5624SAnshul Dalal  - |
52*dc5b5624SAnshul Dalal    #include <dt-bindings/interrupt-controller/irq.h>
53*dc5b5624SAnshul Dalal
54*dc5b5624SAnshul Dalal    i2c {
55*dc5b5624SAnshul Dalal        #address-cells = <1>;
56*dc5b5624SAnshul Dalal        #size-cells = <0>;
57*dc5b5624SAnshul Dalal
58*dc5b5624SAnshul Dalal        joystick@50 {
59*dc5b5624SAnshul Dalal            compatible = "adafruit,seesaw-gamepad";
60*dc5b5624SAnshul Dalal            interrupts = <18 IRQ_TYPE_EDGE_RISING>;
61*dc5b5624SAnshul Dalal            reg = <0x50>;
62*dc5b5624SAnshul Dalal        };
63*dc5b5624SAnshul Dalal    };
64