ARM: dts: aspeed: bletchley: Separate leds into multiple groups
authorPotin Lai <potin.lai@quantatw.com>
Tue, 15 Feb 2022 16:31:43 +0000 (00:31 +0800)
committerJoel Stanley <joel@jms.id.au>
Wed, 16 Feb 2022 05:07:22 +0000 (15:37 +1030)
Separate gpio-leds by each io expander chip.
To avoid entire gpio-leds bind failed due to single chip not available

Signed-off-by: Potin Lai <potin.lai@quantatw.com>
Reviewed-by: Joel Stanley <joel@jms.id.au>
Reviewed-by: Patrick Williams <patrick@stwcx.xyz>
Link: https://lore.kernel.org/r/20220215163151.32252-3-potin.lai@quantatw.com
Signed-off-by: Joel Stanley <joel@jms.id.au>
arch/arm/boot/dts/aspeed-bmc-facebook-bletchley.dts

index e77736ed5c4cbd4eee92418e8d8bcfa6f762881b..ebd2430a3bdd31be4ee372f67bdc717abbcf1c06 100644 (file)
@@ -5,6 +5,7 @@
 #include "aspeed-g6.dtsi"
 #include <dt-bindings/gpio/aspeed-gpio.h>
 #include <dt-bindings/usb/pd.h>
+#include <dt-bindings/leds/leds-pca955x.h>
 
 / {
        model = "Facebook Bletchley BMC";
                // Fixed link
        };
 
-       leds {
+       front_gpio_leds {
                compatible = "gpio-leds";
-
                sys_log_id {
-                       retain-state-shutdown;
-                       default-state = "keep";
+                       default-state = "off";
                        gpios = <&front_leds 0 GPIO_ACTIVE_HIGH>;
                };
+       };
+
+       fan_gpio_leds {
+               compatible = "gpio-leds";
                fan0_blue {
                        retain-state-shutdown;
                        default-state = "on";
-                       gpios = <&fan_ioexp 8 GPIO_ACTIVE_HIGH>;
+                       gpios = <&fan_leds 8 GPIO_ACTIVE_HIGH>;
                };
                fan1_blue {
                        retain-state-shutdown;
                        default-state = "on";
-                       gpios = <&fan_ioexp 9 GPIO_ACTIVE_HIGH>;
+                       gpios = <&fan_leds 9 GPIO_ACTIVE_HIGH>;
                };
                fan2_blue {
                        retain-state-shutdown;
                        default-state = "on";
-                       gpios = <&fan_ioexp 10 GPIO_ACTIVE_HIGH>;
+                       gpios = <&fan_leds 10 GPIO_ACTIVE_HIGH>;
                };
                fan3_blue {
                        retain-state-shutdown;
                        default-state = "on";
-                       gpios = <&fan_ioexp 11 GPIO_ACTIVE_HIGH>;
+                       gpios = <&fan_leds 11 GPIO_ACTIVE_HIGH>;
                };
                fan0_amber {
                        retain-state-shutdown;
                        default-state = "off";
-                       gpios = <&fan_ioexp 12 GPIO_ACTIVE_HIGH>;
+                       gpios = <&fan_leds 12 GPIO_ACTIVE_HIGH>;
                };
                fan1_amber {
                        retain-state-shutdown;
                        default-state = "off";
-                       gpios = <&fan_ioexp 13 GPIO_ACTIVE_HIGH>;
+                       gpios = <&fan_leds 13 GPIO_ACTIVE_HIGH>;
                };
                fan2_amber {
                        retain-state-shutdown;
                        default-state = "off";
-                       gpios = <&fan_ioexp 14 GPIO_ACTIVE_HIGH>;
+                       gpios = <&fan_leds 14 GPIO_ACTIVE_HIGH>;
                };
                fan3_amber {
                        retain-state-shutdown;
                        default-state = "off";
-                       gpios = <&fan_ioexp 15 GPIO_ACTIVE_HIGH>;
+                       gpios = <&fan_leds 15 GPIO_ACTIVE_HIGH>;
                };
+       };
+
+       sled1_gpio_leds {
+               compatible = "gpio-leds";
                sled1_amber {
                        retain-state-shutdown;
-                       default-state = "off";
+                       default-state = "keep";
                        gpios = <&sled1_leds 0 GPIO_ACTIVE_LOW>;
                };
                sled1_blue {
                        retain-state-shutdown;
-                       default-state = "off";
+                       default-state = "keep";
                        gpios = <&sled1_leds 1 GPIO_ACTIVE_LOW>;
                };
+       };
+
+       sled2_gpio_leds {
+               compatible = "gpio-leds";
                sled2_amber {
                        retain-state-shutdown;
-                       default-state = "off";
+                       default-state = "keep";
                        gpios = <&sled2_leds 0 GPIO_ACTIVE_LOW>;
                };
                sled2_blue {
                        retain-state-shutdown;
-                       default-state = "off";
+                       default-state = "keep";
                        gpios = <&sled2_leds 1 GPIO_ACTIVE_LOW>;
                };
+       };
+
+       sled3_gpio_leds {
+               compatible = "gpio-leds";
                sled3_amber {
                        retain-state-shutdown;
-                       default-state = "off";
+                       default-state = "keep";
                        gpios = <&sled3_leds 0 GPIO_ACTIVE_LOW>;
                };
                sled3_blue {
                        retain-state-shutdown;
-                       default-state = "off";
+                       default-state = "keep";
                        gpios = <&sled3_leds 1 GPIO_ACTIVE_LOW>;
                };
+       };
+
+       sled4_gpio_leds {
+               compatible = "gpio-leds";
                sled4_amber {
                        retain-state-shutdown;
-                       default-state = "off";
+                       default-state = "keep";
                        gpios = <&sled4_leds 0 GPIO_ACTIVE_LOW>;
                };
                sled4_blue {
                        retain-state-shutdown;
-                       default-state = "off";
+                       default-state = "keep";
                        gpios = <&sled4_leds 1 GPIO_ACTIVE_LOW>;
                };
+       };
+
+       sled5_gpio_leds {
+               compatible = "gpio-leds";
                sled5_amber {
                        retain-state-shutdown;
-                       default-state = "off";
+                       default-state = "keep";
                        gpios = <&sled5_leds 0 GPIO_ACTIVE_LOW>;
                };
                sled5_blue {
                        retain-state-shutdown;
-                       default-state = "off";
+                       default-state = "keep";
                        gpios = <&sled5_leds 1 GPIO_ACTIVE_LOW>;
                };
+       };
+
+       sled6_gpio_leds {
+               compatible = "gpio-leds";
                sled6_amber {
                        retain-state-shutdown;
-                       default-state = "off";
+                       default-state = "keep";
                        gpios = <&sled6_leds 0 GPIO_ACTIVE_LOW>;
                };
                sled6_blue {
                        retain-state-shutdown;
-                       default-state = "off";
+                       default-state = "keep";
                        gpios = <&sled6_leds 1 GPIO_ACTIVE_LOW>;
                };
        };
                reg = <0x4d>;
        };
 
-       fan_ioexp: pca9552@67 {
+       fan_leds: pca9552@67 {
                compatible = "nxp,pca9552";
                reg = <0x67>;
                #address-cells = <1>;