The Radxa NIO 12L board has an RGB LED, of which only red and blue
are controllable.
Red and blue LEDs: no need to choose, both are enabled.
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Signed-off-by: Julien Massot <julien.massot@collabora.com>
---
.../boot/dts/mediatek/mt8395-radxa-nio-12l.dts | 31 ++++++++++++++++++++++
1 file changed, 31 insertions(+)
diff --git a/arch/arm64/boot/dts/mediatek/mt8395-radxa-nio-12l.dts b/arch/arm64/boot/dts/mediatek/mt8395-radxa-nio-12l.dts
index fd596e2298285361ad7c2fb828feec598d75a73e..12288ad4d2932b7f78c96c0efe366a046721f919 100644
--- a/arch/arm64/boot/dts/mediatek/mt8395-radxa-nio-12l.dts
+++ b/arch/arm64/boot/dts/mediatek/mt8395-radxa-nio-12l.dts
@@ -10,6 +10,7 @@
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>
#include <dt-bindings/interrupt-controller/irq.h>
+#include <dt-bindings/leds/common.h>
#include <dt-bindings/pinctrl/mt8195-pinfunc.h>
#include <dt-bindings/regulator/mediatek,mt6360-regulator.h>
#include <dt-bindings/spmi/spmi.h>
@@ -73,6 +74,28 @@ button-volume-up {
};
};
+ gpio-leds {
+ compatible = "gpio-leds";
+ pinctrl-0 = <&gpio_leds_pins>;
+ pinctrl-names = "default";
+
+ /*
+ * This board has a RGB LED, of which only R and B
+ * are controllable.
+ */
+ led-0 {
+ label = "rgb-blue";
+ color = <LED_COLOR_ID_BLUE>;
+ gpios = <&pio 6 GPIO_ACTIVE_HIGH>;
+ };
+
+ led-1 {
+ label = "rgb-red";
+ color = <LED_COLOR_ID_RED>;
+ gpios = <&pio 7 GPIO_ACTIVE_HIGH>;
+ };
+ };
+
wifi_vreg: regulator-wifi-3v3-en {
compatible = "regulator-fixed";
regulator-name = "wifi_3v3_en";
@@ -647,6 +670,14 @@ pins {
};
};
+ gpio_leds_pins: gpio-leds-pins {
+ pins {
+ pinmux = <PINMUX_GPIO6__FUNC_GPIO6>,
+ <PINMUX_GPIO7__FUNC_GPIO7>;
+ output-low;
+ };
+ };
+
i2c2_pins: i2c2-pins {
pins-bus {
pinmux = <PINMUX_GPIO12__FUNC_SDA2>,
--
2.50.1
Hello Julien,
Am Tue, Aug 26, 2025 at 04:01:54PM +0200 schrieb Julien Massot:
> The Radxa NIO 12L board has an RGB LED, of which only red and blue
> are controllable.
>
> Red and blue LEDs: no need to choose, both are enabled.
>
> Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
> Signed-off-by: Julien Massot <julien.massot@collabora.com>
> ---
> .../boot/dts/mediatek/mt8395-radxa-nio-12l.dts | 31 ++++++++++++++++++++++
> 1 file changed, 31 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/mediatek/mt8395-radxa-nio-12l.dts b/arch/arm64/boot/dts/mediatek/mt8395-radxa-nio-12l.dts
> index fd596e2298285361ad7c2fb828feec598d75a73e..12288ad4d2932b7f78c96c0efe366a046721f919 100644
> --- a/arch/arm64/boot/dts/mediatek/mt8395-radxa-nio-12l.dts
> +++ b/arch/arm64/boot/dts/mediatek/mt8395-radxa-nio-12l.dts
> @@ -10,6 +10,7 @@
> #include <dt-bindings/gpio/gpio.h>
> #include <dt-bindings/input/input.h>
> #include <dt-bindings/interrupt-controller/irq.h>
> +#include <dt-bindings/leds/common.h>
> #include <dt-bindings/pinctrl/mt8195-pinfunc.h>
> #include <dt-bindings/regulator/mediatek,mt6360-regulator.h>
> #include <dt-bindings/spmi/spmi.h>
> @@ -73,6 +74,28 @@ button-volume-up {
> };
> };
>
> + gpio-leds {
> + compatible = "gpio-leds";
> + pinctrl-0 = <&gpio_leds_pins>;
> + pinctrl-names = "default";
> +
> + /*
> + * This board has a RGB LED, of which only R and B
> + * are controllable.
> + */
> + led-0 {
> + label = "rgb-blue";
> + color = <LED_COLOR_ID_BLUE>;
> + gpios = <&pio 6 GPIO_ACTIVE_HIGH>;
> + };
> +
> + led-1 {
> + label = "rgb-red";
> + color = <LED_COLOR_ID_RED>;
> + gpios = <&pio 7 GPIO_ACTIVE_HIGH>;
> + };
The label property is deprecated, and if I'm not mistaken not
recommended for new boards. Do you have a reason to set it?
If so, it might be worth adding in the commit message.
Greets
Alex
> + };
> +
> wifi_vreg: regulator-wifi-3v3-en {
> compatible = "regulator-fixed";
> regulator-name = "wifi_3v3_en";
> @@ -647,6 +670,14 @@ pins {
> };
> };
>
> + gpio_leds_pins: gpio-leds-pins {
> + pins {
> + pinmux = <PINMUX_GPIO6__FUNC_GPIO6>,
> + <PINMUX_GPIO7__FUNC_GPIO7>;
> + output-low;
> + };
> + };
> +
> i2c2_pins: i2c2-pins {
> pins-bus {
> pinmux = <PINMUX_GPIO12__FUNC_SDA2>,
>
> --
> 2.50.1
>
>
Hi Alexander,
On Wed, 2025-08-27 at 09:40 +0200, Alexander Dahl wrote:
> Hello Julien,
>
> Am Tue, Aug 26, 2025 at 04:01:54PM +0200 schrieb Julien Massot:
> > The Radxa NIO 12L board has an RGB LED, of which only red and blue
> > are controllable.
> >
> > Red and blue LEDs: no need to choose, both are enabled.
> >
> > Reviewed-by: AngeloGioacchino Del Regno
> > <angelogioacchino.delregno@collabora.com>
> > Signed-off-by: Julien Massot <julien.massot@collabora.com>
> > ---
> > .../boot/dts/mediatek/mt8395-radxa-nio-12l.dts | 31
> > ++++++++++++++++++++++
> > 1 file changed, 31 insertions(+)
> >
> > diff --git a/arch/arm64/boot/dts/mediatek/mt8395-radxa-nio-12l.dts
> > b/arch/arm64/boot/dts/mediatek/mt8395-radxa-nio-12l.dts
> > index
> > fd596e2298285361ad7c2fb828feec598d75a73e..12288ad4d2932b7f78c96c0efe36
> > 6a046721f919 100644
> > --- a/arch/arm64/boot/dts/mediatek/mt8395-radxa-nio-12l.dts
> > +++ b/arch/arm64/boot/dts/mediatek/mt8395-radxa-nio-12l.dts
> > @@ -10,6 +10,7 @@
> > #include <dt-bindings/gpio/gpio.h>
> > #include <dt-bindings/input/input.h>
> > #include <dt-bindings/interrupt-controller/irq.h>
> > +#include <dt-bindings/leds/common.h>
> > #include <dt-bindings/pinctrl/mt8195-pinfunc.h>
> > #include <dt-bindings/regulator/mediatek,mt6360-regulator.h>
> > #include <dt-bindings/spmi/spmi.h>
> > @@ -73,6 +74,28 @@ button-volume-up {
> > };
> > };
> >
> > + gpio-leds {
> > + compatible = "gpio-leds";
> > + pinctrl-0 = <&gpio_leds_pins>;
> > + pinctrl-names = "default";
> > +
> > + /*
> > + * This board has a RGB LED, of which only R and B
> > + * are controllable.
> > + */
> > + led-0 {
> > + label = "rgb-blue";
> > + color = <LED_COLOR_ID_BLUE>;
> > + gpios = <&pio 6 GPIO_ACTIVE_HIGH>;
> > + };
> > +
> > + led-1 {
> > + label = "rgb-red";
> > + color = <LED_COLOR_ID_RED>;
> > + gpios = <&pio 7 GPIO_ACTIVE_HIGH>;
> > + };
>
> The label property is deprecated, and if I'm not mistaken not
> recommended for new boards. Do you have a reason to set it?
> If so, it might be worth adding in the commit message.
No, I just wasn’t aware of the deprecation, but I can now see
it in the common LED binding.
I’ll wait a bit for any other potential reviews and then resend
the patch without the label. The LED will then appear as 'blue'
instead of 'rgb-blue' in sysfs.
Regards,
Julien
© 2016 - 2026 Red Hat, Inc.