ARM: dts: wpcm450-supermicro-x9sci-ln4f: Add GPIO LEDs and buttons
authorJonathan Neuschäfer <j.neuschaefer@gmx.net>
Sat, 29 Jan 2022 11:52:27 +0000 (12:52 +0100)
committerJoel Stanley <joel@jms.id.au>
Tue, 15 Feb 2022 05:54:04 +0000 (16:24 +1030)
The Supermicro X9SCi-LN4F server mainboard has a two LEDs and a button
under the control of the BMC. This patch makes them accessible under
Linux running on the BMC.

Signed-off-by: Jonathan Neuschäfer <j.neuschaefer@gmx.net>
Link: https://lore.kernel.org/r/20220129115228.2257310-9-j.neuschaefer@gmx.net
Signed-off-by: Joel Stanley <joel@jms.id.au>
arch/arm/boot/dts/nuvoton-wpcm450-supermicro-x9sci-ln4f.dts

index 83f27fb..3ee6125 100644 (file)
@@ -8,6 +8,9 @@
 
 #include "nuvoton-wpcm450.dtsi"
 
+#include <dt-bindings/input/linux-event-codes.h>
+#include <dt-bindings/gpio/gpio.h>
+
 / {
        model = "Supermicro X9SCi-LN4F BMC";
        compatible = "supermicro,x9sci-ln4f-bmc", "nuvoton,wpcm450";
                device_type = "memory";
                reg = <0 0x08000000>; /* 128 MiB */
        };
+
+       gpio-keys {
+               compatible = "gpio-keys";
+               pinctrl-names = "default";
+               pinctrl-0 = <&key_pins>;
+
+               uid {
+                       label = "UID button";
+                       linux,code = <KEY_HOME>;
+                       gpios = <&gpio0 14 GPIO_ACTIVE_HIGH>;
+               };
+       };
+
+       gpio-leds {
+               compatible = "gpio-leds";
+               pinctrl-names = "default";
+               pinctrl-0 = <&led_pins>;
+
+               uid {
+                       label = "UID";
+                       gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>;
+               };
+
+               heartbeat {
+                       label = "heartbeat";
+                       gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
+               };
+       };
+};
+
+&pinctrl {
+       key_pins: mux-keys {
+               groups = "gspi", "sspi";
+               function = "gpio";
+       };
+
+       led_pins: mux-leds {
+               groups = "hg3", "hg0", "pwm4";
+               function = "gpio";
+       };
 };
 
 &serial0 {