[PATCH] arm64: dts: rockchip: Turn all LEDs on at boot for Radxa boards
FUKAUMI Naoki
naoki at radxa.com
Sun Nov 9 23:20:52 PST 2025
Hi,
On 11/10/25 11:27, FUKAUMI Naoki wrote:
> Radxa's boards turn all LEDs on at boot(loader), but some boards, e.g.
> ROCK Pi E don't have `default-state` property in Linux kernel tree but
> have it in U-Boot tree[1] instead.
>
> This patch adds `default-state = "on"` for (almost) all LEDs (with a
> few exceptions which should be "off" such as RGB LEDs on E25 and LAN/
> WAN LEDs on E20C/E52C).
>
> Also, remove following redundant properties:
> linux,default-trigger = "default-on"; // use default-state = "on"
> default-state = "off"; // default is "off"
>
> [1] https://source.denx.de/u-boot/u-boot/-/blob/v2025.10/arch/arm/dts/rk3328-rock-pi-e-base-u-boot.dtsi#L11
I'll add the following as a reference:
https://source.denx.de/u-boot/u-boot/-/blob/v2025.10/arch/arm/dts/rk3399-rock-4c-plus-u-boot.dtsi#L11-17
https://source.denx.de/u-boot/u-boot/-/blob/v2025.10/arch/arm/dts/rk3399-rock-pi-4-u-boot.dtsi#L11-13
https://source.denx.de/u-boot/u-boot/-/blob/v2025.10/arch/arm/dts/rk3566-radxa-cm3-io-u-boot.dtsi#L10-12
https://source.denx.de/u-boot/u-boot/-/blob/v2025.10/arch/arm/dts/rk3566-rock-3c-u-boot.dtsi#L14-16
https://source.denx.de/u-boot/u-boot/-/blob/v2025.10/arch/arm/dts/rk3568-radxa-e25-u-boot.dtsi#L7-24
https://source.denx.de/u-boot/u-boot/-/blob/v2025.10/arch/arm/dts/rk3568-rock-3a-u-boot.dtsi#L11-13
https://source.denx.de/u-boot/u-boot/-/blob/v2025.10/arch/arm/dts/rk3588-rock-5b-u-boot.dtsi#L11-13
https://source.denx.de/u-boot/u-boot/-/blob/v2025.10/arch/arm/dts/rk3588-rock-5b-u-boot.dtsi#L11-13
Best regards,
--
FUKAUMI Naoki
Radxa Computer (Shenzhen) Co., Ltd.
> Signed-off-by: FUKAUMI Naoki <naoki at radxa.com>
> ---
> arch/arm64/boot/dts/rockchip/rk3308-rock-pi-s.dts | 1 -
> arch/arm64/boot/dts/rockchip/rk3328-rock-pi-e.dts | 1 +
> arch/arm64/boot/dts/rockchip/rk3399-rock-4c-plus.dts | 3 ++-
> arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi | 1 +
> arch/arm64/boot/dts/rockchip/rk3528-radxa-e20c.dts | 2 --
> arch/arm64/boot/dts/rockchip/rk3528-rock-2a.dts | 1 -
> arch/arm64/boot/dts/rockchip/rk3566-radxa-cm3-io.dts | 1 +
> arch/arm64/boot/dts/rockchip/rk3566-rock-3c.dts | 1 +
> arch/arm64/boot/dts/rockchip/rk3568-radxa-cm3i.dtsi | 1 +
> arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts | 1 +
> arch/arm64/boot/dts/rockchip/rk3576-rock-4d.dts | 3 ++-
> arch/arm64/boot/dts/rockchip/rk3582-radxa-e52c.dts | 2 --
> arch/arm64/boot/dts/rockchip/rk3588-rock-5-itx.dts | 3 ++-
> arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dtsi | 1 +
> arch/arm64/boot/dts/rockchip/rk3588-rock-5t.dts | 1 +
> arch/arm64/boot/dts/rockchip/rk3588s-rock-5a.dts | 3 ++-
> 16 files changed, 16 insertions(+), 10 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/rockchip/rk3308-rock-pi-s.dts b/arch/arm64/boot/dts/rockchip/rk3308-rock-pi-s.dts
> index 7a32972bc2496..c1e3098b9a7bc 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3308-rock-pi-s.dts
> +++ b/arch/arm64/boot/dts/rockchip/rk3308-rock-pi-s.dts
> @@ -35,7 +35,6 @@ green-led {
> function = LED_FUNCTION_POWER;
> gpios = <&gpio0 RK_PA6 GPIO_ACTIVE_HIGH>;
> label = "rockpis:green:power";
> - linux,default-trigger = "default-on";
> };
>
> blue-led {
> diff --git a/arch/arm64/boot/dts/rockchip/rk3328-rock-pi-e.dts b/arch/arm64/boot/dts/rockchip/rk3328-rock-pi-e.dts
> index a4bdd87d0729f..d3d6f34b66fb0 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3328-rock-pi-e.dts
> +++ b/arch/arm64/boot/dts/rockchip/rk3328-rock-pi-e.dts
> @@ -59,6 +59,7 @@ leds {
>
> led-0 {
> color = <LED_COLOR_ID_BLUE>;
> + default-state = "on";
> gpios = <&gpio3 RK_PA5 GPIO_ACTIVE_LOW>;
> linux,default-trigger = "heartbeat";
> };
> diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rock-4c-plus.dts b/arch/arm64/boot/dts/rockchip/rk3399-rock-4c-plus.dts
> index 962b8b231c960..a83ffbef22a7b 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3399-rock-4c-plus.dts
> +++ b/arch/arm64/boot/dts/rockchip/rk3399-rock-4c-plus.dts
> @@ -39,14 +39,15 @@ leds {
> led-0 {
> function = LED_FUNCTION_POWER;
> color = <LED_COLOR_ID_GREEN>;
> + default-state = "on";
> gpios = <&gpio3 RK_PD4 GPIO_ACTIVE_LOW>;
> - linux,default-trigger = "default-on";
> };
>
> /* USER_LED2 */
> led-1 {
> function = LED_FUNCTION_STATUS;
> color = <LED_COLOR_ID_BLUE>;
> + default-state = "on";
> gpios = <&gpio3 RK_PD5 GPIO_ACTIVE_HIGH>;
> linux,default-trigger = "heartbeat";
> };
> diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi
> index 046dbe3290178..ef434c23fe85c 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi
> +++ b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi
> @@ -35,6 +35,7 @@ leds {
> led-0 {
> function = LED_FUNCTION_STATUS;
> color = <LED_COLOR_ID_BLUE>;
> + default-state = "on";
> gpios = <&gpio3 RK_PD5 GPIO_ACTIVE_HIGH>;
> linux,default-trigger = "heartbeat";
> };
> diff --git a/arch/arm64/boot/dts/rockchip/rk3528-radxa-e20c.dts b/arch/arm64/boot/dts/rockchip/rk3528-radxa-e20c.dts
> index b324527561558..79d316a1d8495 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3528-radxa-e20c.dts
> +++ b/arch/arm64/boot/dts/rockchip/rk3528-radxa-e20c.dts
> @@ -62,7 +62,6 @@ leds {
>
> led-lan {
> color = <LED_COLOR_ID_GREEN>;
> - default-state = "off";
> function = LED_FUNCTION_LAN;
> gpios = <&gpio4 RK_PB5 GPIO_ACTIVE_HIGH>;
> linux,default-trigger = "netdev";
> @@ -78,7 +77,6 @@ led-sys {
>
> led-wan {
> color = <LED_COLOR_ID_GREEN>;
> - default-state = "off";
> function = LED_FUNCTION_WAN;
> gpios = <&gpio4 RK_PC0 GPIO_ACTIVE_HIGH>;
> linux,default-trigger = "netdev";
> diff --git a/arch/arm64/boot/dts/rockchip/rk3528-rock-2a.dts b/arch/arm64/boot/dts/rockchip/rk3528-rock-2a.dts
> index c03ae1dd34560..0b696d49b71fa 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3528-rock-2a.dts
> +++ b/arch/arm64/boot/dts/rockchip/rk3528-rock-2a.dts
> @@ -45,7 +45,6 @@ led-1 {
> default-state = "on";
> function = LED_FUNCTION_STATUS;
> gpios = <&gpio3 RK_PC1 GPIO_ACTIVE_LOW>;
> - linux,default-trigger = "default-on";
> };
> };
>
> diff --git a/arch/arm64/boot/dts/rockchip/rk3566-radxa-cm3-io.dts b/arch/arm64/boot/dts/rockchip/rk3566-radxa-cm3-io.dts
> index b5b253f04cdf5..9e7212b70e3f1 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3566-radxa-cm3-io.dts
> +++ b/arch/arm64/boot/dts/rockchip/rk3566-radxa-cm3-io.dts
> @@ -46,6 +46,7 @@ leds {
> led-1 {
> gpios = <&gpio4 RK_PA4 GPIO_ACTIVE_LOW>;
> color = <LED_COLOR_ID_GREEN>;
> + default-state = "on";
> function = LED_FUNCTION_ACTIVITY;
> linux,default-trigger = "heartbeat";
> pinctrl-names = "default";
> diff --git a/arch/arm64/boot/dts/rockchip/rk3566-rock-3c.dts b/arch/arm64/boot/dts/rockchip/rk3566-rock-3c.dts
> index 6224d72813e59..3ec108bcf89a1 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3566-rock-3c.dts
> +++ b/arch/arm64/boot/dts/rockchip/rk3566-rock-3c.dts
> @@ -47,6 +47,7 @@ led-0 {
> gpios = <&gpio0 RK_PA0 GPIO_ACTIVE_HIGH>;
> function = LED_FUNCTION_HEARTBEAT;
> color = <LED_COLOR_ID_BLUE>;
> + default-state = "on";
> linux,default-trigger = "heartbeat";
> pinctrl-names = "default";
> pinctrl-0 = <&user_led2>;
> diff --git a/arch/arm64/boot/dts/rockchip/rk3568-radxa-cm3i.dtsi b/arch/arm64/boot/dts/rockchip/rk3568-radxa-cm3i.dtsi
> index 729e38b9f620e..140582f8e1034 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3568-radxa-cm3i.dtsi
> +++ b/arch/arm64/boot/dts/rockchip/rk3568-radxa-cm3i.dtsi
> @@ -23,6 +23,7 @@ led_user: led-0 {
> gpios = <&gpio0 RK_PA6 GPIO_ACTIVE_HIGH>;
> function = LED_FUNCTION_HEARTBEAT;
> color = <LED_COLOR_ID_GREEN>;
> + default-state = "on";
> linux,default-trigger = "heartbeat";
> pinctrl-names = "default";
> pinctrl-0 = <&led_user_en>;
> diff --git a/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts b/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts
> index 44cfdfeed6681..e6c18df0fa582 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts
> +++ b/arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts
> @@ -47,6 +47,7 @@ led_user: led-0 {
> gpios = <&gpio0 RK_PB7 GPIO_ACTIVE_HIGH>;
> function = LED_FUNCTION_HEARTBEAT;
> color = <LED_COLOR_ID_BLUE>;
> + default-state = "on";
> linux,default-trigger = "heartbeat";
> pinctrl-names = "default";
> pinctrl-0 = <&led_user_en>;
> diff --git a/arch/arm64/boot/dts/rockchip/rk3576-rock-4d.dts b/arch/arm64/boot/dts/rockchip/rk3576-rock-4d.dts
> index 9bc33422ced50..99d3a8be8f18c 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3576-rock-4d.dts
> +++ b/arch/arm64/boot/dts/rockchip/rk3576-rock-4d.dts
> @@ -52,13 +52,14 @@ leds: leds {
>
> power-led {
> color = <LED_COLOR_ID_GREEN>;
> + default-state = "on";
> function = LED_FUNCTION_STATUS;
> gpios = <&gpio0 RK_PB4 GPIO_ACTIVE_HIGH>;
> - linux,default-trigger = "default-on";
> };
>
> user-led {
> color = <LED_COLOR_ID_BLUE>;
> + default-state = "on";
> function = LED_FUNCTION_HEARTBEAT;
> gpios = <&gpio0 RK_PC4 GPIO_ACTIVE_LOW>;
> linux,default-trigger = "heartbeat";
> diff --git a/arch/arm64/boot/dts/rockchip/rk3582-radxa-e52c.dts b/arch/arm64/boot/dts/rockchip/rk3582-radxa-e52c.dts
> index 854c118418eb8..f737769d4a007 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3582-radxa-e52c.dts
> +++ b/arch/arm64/boot/dts/rockchip/rk3582-radxa-e52c.dts
> @@ -71,7 +71,6 @@ leds-1 {
>
> led-1 {
> color = <LED_COLOR_ID_GREEN>;
> - default-state = "off";
> function = LED_FUNCTION_LAN;
> linux,default-trigger = "netdev";
> pwms = <&pwm14 0 1000000 PWM_POLARITY_INVERTED>;
> @@ -80,7 +79,6 @@ led-1 {
>
> led-2 {
> color = <LED_COLOR_ID_GREEN>;
> - default-state = "off";
> function = LED_FUNCTION_WAN;
> linux,default-trigger = "netdev";
> pwms = <&pwm11 0 1000000 PWM_POLARITY_INVERTED>;
> diff --git a/arch/arm64/boot/dts/rockchip/rk3588-rock-5-itx.dts b/arch/arm64/boot/dts/rockchip/rk3588-rock-5-itx.dts
> index bc8140883de47..86477346c3f5a 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3588-rock-5-itx.dts
> +++ b/arch/arm64/boot/dts/rockchip/rk3588-rock-5-itx.dts
> @@ -88,11 +88,12 @@ gpio-leds {
> pinctrl-0 = <&led_pins>;
>
> power-led1 {
> + default-state = "on";
> gpios = <&gpio0 RK_PB7 GPIO_ACTIVE_HIGH>;
> - linux,default-trigger = "default-on";
> };
>
> hdd-led2 {
> + default-state = "on";
> gpios = <&gpio0 RK_PC0 GPIO_ACTIVE_HIGH>;
> linux,default-trigger = "disk-activity";
> };
> diff --git a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dtsi
> index e5c474e4d02a6..8c4a4270f9f93 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dtsi
> +++ b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dtsi
> @@ -30,6 +30,7 @@ leds {
> led_rgb_b {
> function = LED_FUNCTION_STATUS;
> color = <LED_COLOR_ID_BLUE>;
> + default-state = "on";
> gpios = <&gpio0 RK_PB7 GPIO_ACTIVE_HIGH>;
> linux,default-trigger = "heartbeat";
> };
> diff --git a/arch/arm64/boot/dts/rockchip/rk3588-rock-5t.dts b/arch/arm64/boot/dts/rockchip/rk3588-rock-5t.dts
> index 0dd90c744380b..87e9d4b86dad4 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3588-rock-5t.dts
> +++ b/arch/arm64/boot/dts/rockchip/rk3588-rock-5t.dts
> @@ -33,6 +33,7 @@ leds {
> led_rgb_b {
> function = LED_FUNCTION_STATUS;
> color = <LED_COLOR_ID_BLUE>;
> + default-state = "on";
> gpios = <&gpio0 RK_PA0 GPIO_ACTIVE_HIGH>;
> linux,default-trigger = "heartbeat";
> };
> diff --git a/arch/arm64/boot/dts/rockchip/rk3588s-rock-5a.dts b/arch/arm64/boot/dts/rockchip/rk3588s-rock-5a.dts
> index 19a08f7794e67..46c81e796b100 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3588s-rock-5a.dts
> +++ b/arch/arm64/boot/dts/rockchip/rk3588s-rock-5a.dts
> @@ -54,6 +54,7 @@ leds {
>
> io-led {
> color = <LED_COLOR_ID_BLUE>;
> + default-state = "on";
> function = LED_FUNCTION_STATUS;
> gpios = <&gpio3 RK_PD5 GPIO_ACTIVE_HIGH>;
> linux,default-trigger = "heartbeat";
> @@ -61,9 +62,9 @@ io-led {
>
> power-led {
> color = <LED_COLOR_ID_GREEN>;
> + default-state = "on";
> function = LED_FUNCTION_POWER;
> gpios = <&gpio3 RK_PC4 GPIO_ACTIVE_HIGH>;
> - linux,default-trigger = "default-on";
> };
> };
>
More information about the Linux-rockchip
mailing list