* [PATCH 4/6] dt-bindings: mfd: sensehat: Add Raspberry Pi Sense HAT schema
[not found] <20220203002521.162878-1-cmirabil@redhat.com>
@ 2022-02-03 0:25 ` Charles Mirabile
2022-02-03 13:50 ` Rob Herring
0 siblings, 1 reply; 2+ messages in thread
From: Charles Mirabile @ 2022-02-03 0:25 UTC (permalink / raw)
To: linux-kernel
Cc: Charles Mirabile, Serge Schneider, Stefan Wahren,
Nicolas Saenz Julienne, Mattias Brugger, linux-rpi-kernel,
linux-arm-kernel, fedora-rpi, Miguel Ojeda, Rob Herring,
Dmitry Torokhov, Lee Jones, devicetree, Mwesigwa Guma,
Joel Savitz
This patch adds the device tree bindings for the Sense HAT
and each of its children devices in yaml form.
Co-developed-by: Mwesigwa Guma <mguma@redhat.com>
Signed-off-by: Mwesigwa Guma <mguma@redhat.com>
Co-developed-by: Joel Savitz <jsavitz@redhat.com>
Signed-off-by: Joel Savitz <jsavitz@redhat.com>
Signed-off-by: Charles Mirabile <cmirabil@redhat.com>
---
.../raspberrypi,sensehat-display.yaml | 32 +++++++++
.../input/raspberrypi,sensehat-joystick.yaml | 37 ++++++++++
.../bindings/mfd/raspberrypi,sensehat.yaml | 68 +++++++++++++++++++
3 files changed, 137 insertions(+)
create mode 100644 Documentation/devicetree/bindings/auxdisplay/raspberrypi,sensehat-display.yaml
create mode 100644 Documentation/devicetree/bindings/input/raspberrypi,sensehat-joystick.yaml
create mode 100644 Documentation/devicetree/bindings/mfd/raspberrypi,sensehat.yaml
diff --git a/Documentation/devicetree/bindings/auxdisplay/raspberrypi,sensehat-display.yaml b/Documentation/devicetree/bindings/auxdisplay/raspberrypi,sensehat-display.yaml
new file mode 100644
index 000000000000..8937adba1c4b
--- /dev/null
+++ b/Documentation/devicetree/bindings/auxdisplay/raspberrypi,sensehat-display.yaml
@@ -0,0 +1,32 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+$id: http://devicetree.org/schemas/auxdisplay/raspberrypi,sensehat-display.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Raspberry Pi Sensehat Display
+
+maintainers:
+ - Charles Mirabile <cmirabil@redhat.com>
+ - Mwesigwa Guma <mguma@redhat.com>
+ - Joel Savitz <jsavitz@redhat.com>
+
+description:
+ This device is part of the sensehat multi function device.
+ For more information see ../mfd/raspberrypi,sensehat.yaml.
+
+ This device features a programmable 8x8 RGB LED matrix.
+
+properties:
+ compatible:
+ const: raspberrypi,sensehat-display
+
+ reg:
+ items:
+ - description: |
+ smb register number for the first component of the fist
+ pixel in the range.
+
+required:
+ - compatible
+ - reg
+
+additionalProperties: false
diff --git a/Documentation/devicetree/bindings/input/raspberrypi,sensehat-joystick.yaml b/Documentation/devicetree/bindings/input/raspberrypi,sensehat-joystick.yaml
new file mode 100644
index 000000000000..a6d95c903b04
--- /dev/null
+++ b/Documentation/devicetree/bindings/input/raspberrypi,sensehat-joystick.yaml
@@ -0,0 +1,37 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+$id: http://devicetree.org/schemas/input/raspberrypi,sensehat-joystick.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Raspberry Pi Sensehat Joystick
+
+maintainers:
+ - Charles Mirabile <cmirabil@redhat.com>
+ - Mwesigwa Guma <mguma@redhat.com>
+ - Joel Savitz <jsavitz@redhat.com>
+
+description:
+ This device is part of the sensehat multi function device.
+ For more information see ../mfd/raspberrypi,sensehat.yaml.
+
+ This device features a five button joystick (up, down,left,
+ right, click)
+
+properties:
+ compatible:
+ const: raspberrypi,sensehat-joystick
+
+ reg:
+ items:
+ - description: |
+ smb register number for accessing the state of the buttons
+
+ interrupts:
+ items:
+ - description: pin number for joystick interrupt
+
+required:
+ - compatible
+ - reg
+ - interrupts
+
+additionalProperties: false
diff --git a/Documentation/devicetree/bindings/mfd/raspberrypi,sensehat.yaml b/Documentation/devicetree/bindings/mfd/raspberrypi,sensehat.yaml
new file mode 100644
index 000000000000..89037be87c10
--- /dev/null
+++ b/Documentation/devicetree/bindings/mfd/raspberrypi,sensehat.yaml
@@ -0,0 +1,68 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+$id: http://devicetree.org/schemas/mfd/raspberrypi,sensehat.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Raspberry Pi Sensehat
+
+maintainers:
+ - Charles Mirabile <cmirabil@redhat.com>
+ - Mwesigwa Guma <mguma@redhat.com>
+ - Joel Savitz <jsavitz@redhat.com>
+
+description:
+ The Raspberry Pi Sensehat is an addon board originally developed
+ for the Raspberry Pi that has a joystick and an 8x8 RGB LED display
+ as well as several environmental sensors. It connects via i2c and
+ a gpio for irq.
+
+properties:
+ compatible:
+ const: raspberrypi,sensehat
+
+ reg:
+ items:
+ - description: i2c device address
+
+ "#address-cells":
+ const: 1
+
+ "#size-cells":
+ const: 0
+
+patternProperties:
+ "^joystick(@[0-9a-f]+)?$":
+ $ref: ../input/raspberrypi,sensehat-joystick.yaml
+
+ "^display(@[0-9a-f]+)?$":
+ $ref: ../auxdisplay/raspberrypi,sensehat-display.yaml
+
+required:
+ - "#address-cells"
+ - "#size-cells"
+ - compatible
+ - reg
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/gpio/gpio.h>
+ i2c {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ sensehat@46 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ compatible = "raspberrypi,sensehat";
+ reg = <0x46>;
+ display@0 {
+ compatible = "raspberrypi,sensehat-display";
+ reg = <0x0>;
+ };
+ joystick@f2 {
+ compatible = "raspberrypi,sensehat-joystick";
+ reg = <0x0>;
+ interrupts = <23 GPIO_ACTIVE_HIGH>;
+ };
+ };
+ };
--
2.31.1
^ permalink raw reply related [flat|nested] 2+ messages in thread