Re: [PATCH v1] ARM: dts: aspeed: yosemite4: add fan led config

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Marshall,

On Fri, 2024-12-20 at 12:38 +0800, Delphine CC Chiu wrote:
> From: Marshall Zhan <marshall.zhan.wiwynn@xxxxxxxxx>
> 
> Set fan led config in yosemite4 DTS.
> 
> Signed-off-by: Marshall Zhan <marshall.zhan.wiwynn@xxxxxxxxx>
> Signed-off-by: Delphine CC Chiu <delphine_cc_chiu@xxxxxxxxxx>
> ---
>  .../aspeed/aspeed-bmc-facebook-yosemite4.dts  | 166
> +++++++++++++++++-
>  1 file changed, 163 insertions(+), 3 deletions(-)
> 
> diff --git a/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-
> yosemite4.dts b/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-
> yosemite4.dts
> index ab4904cf2c0e..b5865efcc80c 100644
> --- a/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-yosemite4.dts
> +++ b/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-yosemite4.dts
> @@ -73,6 +73,160 @@ tpm@0 {
>                         spi-max-frequency = <33000000>;
>                 };
>         };
> +
> +       leds {
> +               compatible = "gpio-leds";
> +
> +               led_identify {

The binding prefers naming the led nodes differently:

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree/bindings/leds/leds-gpio.yaml?h=v6.12#n22

If you must name the nodes this way, can you document why in a comment
in the devicetree?

> +                       retain-state-shutdown;
> +                       default-state = "off";
> +                       gpios = <&identify_gpio 8 GPIO_ACTIVE_HIGH>;
> +               };
> +
> +               led_fan0_blue {
> +                       retain-state-shutdown;
> +                       default-state = "on";
> +                       gpios = <&led_gpio0 4 GPIO_ACTIVE_HIGH>;
> +               };
> +
> +               led_fan0_amber {
> +                       retain-state-shutdown;
> +                       default-state = "off";
> +                       gpios = <&led_gpio0 5 GPIO_ACTIVE_HIGH>;
> +               };
> +
> +               led_fan1_blue {
> +                       retain-state-shutdown;
> +                       default-state = "on";
> +                       gpios = <&led_gpio0 10 GPIO_ACTIVE_HIGH>;
> +               };
> +
> +               led_fan1_amber {
> +                       retain-state-shutdown;
> +                       default-state = "off";
> +                       gpios = <&led_gpio0 11 GPIO_ACTIVE_HIGH>;
> +               };
> +
> +               led_fan2_blue {
> +                       retain-state-shutdown;
> +                       default-state = "on";
> +                       gpios = <&led_gpio1 4 GPIO_ACTIVE_HIGH>;
> +               };
> +
> +               led_fan2_amber {
> +                       retain-state-shutdown;
> +                       default-state = "off";
> +                       gpios = <&led_gpio1 5 GPIO_ACTIVE_HIGH>;
> +               };
> +
> +               led_fan3_blue {
> +                       retain-state-shutdown;
> +                       default-state = "on";
> +                       gpios = <&led_gpio1 10 GPIO_ACTIVE_HIGH>;
> +               };
> +
> +               led_fan3_amber {
> +                       retain-state-shutdown;
> +                       default-state = "off";
> +                       gpios = <&led_gpio1 11 GPIO_ACTIVE_HIGH>;
> +               };
> +
> +               led_fan4_blue {
> +                       retain-state-shutdown;
> +                       default-state = "on";
> +                       gpios = <&led_gpio0 2 GPIO_ACTIVE_HIGH>;
> +               };
> +
> +               led_fan4_amber {
> +                       retain-state-shutdown;
> +                       default-state = "off";
> +                       gpios = <&led_gpio0 3 GPIO_ACTIVE_HIGH>;
> +               };
> +
> +               led_fan5_blue {
> +                       retain-state-shutdown;
> +                       default-state = "on";
> +                       gpios = <&led_gpio0 8 GPIO_ACTIVE_HIGH>;
> +               };
> +
> +               led_fan5_amber {
> +                       retain-state-shutdown;
> +                       default-state = "off";
> +                       gpios = <&led_gpio0 9 GPIO_ACTIVE_HIGH>;
> +               };
> +
> +               led_fan6_blue {
> +                       retain-state-shutdown;
> +                       default-state = "on";
> +                       gpios = <&led_gpio1 2 GPIO_ACTIVE_HIGH>;
> +               };
> +
> +               led_fan6_amber {
> +                       retain-state-shutdown;
> +                       default-state = "off";
> +                       gpios = <&led_gpio1 3 GPIO_ACTIVE_HIGH>;
> +               };
> +
> +               led_fan7_blue {
> +                       retain-state-shutdown;
> +                       default-state = "on";
> +                       gpios = <&led_gpio1 8 GPIO_ACTIVE_HIGH>;
> +               };
> +
> +               led_fan7_amber {
> +                       retain-state-shutdown;
> +                       default-state = "off";
> +                       gpios = <&led_gpio1 9 GPIO_ACTIVE_HIGH>;
> +               };
> +
> +               led_fan8_blue {
> +                       retain-state-shutdown;
> +                       default-state = "on";
> +                       gpios = <&led_gpio0 0 GPIO_ACTIVE_HIGH>;
> +               };
> +
> +               led_fan8_amber {
> +                       retain-state-shutdown;
> +                       default-state = "off";
> +                       gpios = <&led_gpio0 1 GPIO_ACTIVE_HIGH>;
> +               };
> +
> +               led_fan9_blue {
> +                       retain-state-shutdown;
> +                       default-state = "on";
> +                       gpios = <&led_gpio0 6 GPIO_ACTIVE_HIGH>;
> +               };
> +
> +               led_fan9_amber {
> +                       retain-state-shutdown;
> +                       default-state = "off";
> +                       gpios = <&led_gpio0 7 GPIO_ACTIVE_HIGH>;
> +               };
> +
> +               led_fan10_blue {
> +                       retain-state-shutdown;
> +                       default-state = "on";
> +                       gpios = <&led_gpio1 0 GPIO_ACTIVE_HIGH>;
> +               };
> +
> +               led_fan10_amber {
> +                       retain-state-shutdown;
> +                       default-state = "off";
> +                       gpios = <&led_gpio1 1 GPIO_ACTIVE_HIGH>;
> +               };
> +
> +               led_fan11_blue {
> +                       retain-state-shutdown;
> +                       default-state = "on";
> +                       gpios = <&led_gpio1 6 GPIO_ACTIVE_HIGH>;
> +               };
> +
> +               led_fan11_amber {
> +                       retain-state-shutdown;
> +                       default-state = "off";
> +                       gpios = <&led_gpio1 7 GPIO_ACTIVE_HIGH>;
> +               };
> +       };
>  };
>  
>  &uart1 {
> @@ -995,11 +1149,17 @@ gpio@20 {
>                                 #gpio-cells = <2>;
>                         };
>  
> -                       gpio@21 {
> +                       identify_gpio: gpio@21 {

Does this expander really only expose the identify led?

>                                 compatible = "nxp,pca9506";
>                                 reg = <0x21>;
>                                 gpio-controller;
>                                 #gpio-cells = <2>;
> +                               gpio-line-names = "","","","",
> +                                                 "","","","",
> +                                                 "LED_IDENTIFY",
> +                                                
> "","","","","","","",
> +                                                
> "","","","","","","","",
> +                                                
> "","","","","","","","";
>                         };
>  
>                         gpio@22 {
> @@ -1173,7 +1333,7 @@ eeprom@52 {
>                                 reg = <0x52>;
>                         };
>  
> -                       gpio@61 {
> +                       led_gpio0: gpio@61 {

Bit of nitpick, but perhaps the node label could be improved?
fan_leds0? And fan_leds1 below?

>                                 compatible = "nxp,pca9552";
>                                 reg = <0x61>;
>                                 #address-cells = <1>;
> @@ -1221,7 +1381,7 @@ eeprom@52 {
>                                 reg = <0x52>;
>                         };
>  
> -                       gpio@61 {
> +                       led_gpio1: gpio@61 {
>                                 compatible = "nxp,pca9552";
>                                 reg = <0x61>;
>                                 #address-cells = <1>;

Cheers,

Andrew




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux