linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] arm64: dts: allwiner: h5: OrangePi PC2: add ethernet LEDs
@ 2025-08-18 16:35 Aleksander Jan Bajkowski
  2025-09-08 14:45 ` Jernej Škrabec
  2025-09-09  0:24 ` Andre Przywara
  0 siblings, 2 replies; 4+ messages in thread
From: Aleksander Jan Bajkowski @ 2025-08-18 16:35 UTC (permalink / raw)
  To: robh, krzk+dt, conor+dt, wens, jernej.skrabec, samuel, devicetree,
	linux-arm-kernel, linux-sunxi, linux-kernel
  Cc: Aleksander Jan Bajkowski

This patch adds support for Ethernet LEDs.

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
---
 .../dts/allwinner/sun50i-h5-orangepi-pc2.dts  | 20 +++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts b/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts
index 0f29da7d51e6..7688f565ec9b 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts
@@ -7,6 +7,7 @@
 
 #include <dt-bindings/gpio/gpio.h>
 #include <dt-bindings/input/input.h>
+#include <dt-bindings/leds/common.h>
 #include <dt-bindings/pinctrl/sun4i-a10.h>
 
 / {
@@ -132,6 +133,25 @@ &external_mdio {
 	ext_rgmii_phy: ethernet-phy@1 {
 		compatible = "ethernet-phy-ieee802.3-c22";
 		reg = <1>;
+
+		leds {
+			#address-cells = <1>;
+			#size-cells = <0>;
+
+			led@0 {
+				reg = <0>;
+				color = <LED_COLOR_ID_GREEN>;
+				function = LED_FUNCTION_LAN;
+				linux,default-trigger = "netdev";
+			};
+
+			led@1 {
+				reg = <1>;
+				color = <LED_COLOR_ID_AMBER>;
+				function = LED_FUNCTION_LAN;
+				linux,default-trigger = "netdev";
+			};
+		};
 	};
 };
 
-- 
2.47.2



^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] arm64: dts: allwiner: h5: OrangePi PC2: add ethernet LEDs
  2025-08-18 16:35 [PATCH] arm64: dts: allwiner: h5: OrangePi PC2: add ethernet LEDs Aleksander Jan Bajkowski
@ 2025-09-08 14:45 ` Jernej Škrabec
       [not found]   ` <5617fd78-32aa-44f4-9f9c-16349b3f8450@wp.pl>
  2025-09-09  0:24 ` Andre Przywara
  1 sibling, 1 reply; 4+ messages in thread
From: Jernej Škrabec @ 2025-09-08 14:45 UTC (permalink / raw)
  To: robh, krzk+dt, conor+dt, wens, samuel, devicetree,
	linux-arm-kernel, linux-sunxi, linux-kernel,
	Aleksander Jan Bajkowski
  Cc: Aleksander Jan Bajkowski

Dne ponedeljek, 18. avgust 2025 ob 18:35:13 Srednjeevropski poletni čas je Aleksander Jan Bajkowski napisal(a):
> This patch adds support for Ethernet LEDs.

How did you tested this? According to linux-sunxi wiki, this board has
RTL8211E, while LED control is supported only with RTL8211F driver.

> 
> Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
> ---
>  .../dts/allwinner/sun50i-h5-orangepi-pc2.dts  | 20 +++++++++++++++++++
>  1 file changed, 20 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts b/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts
> index 0f29da7d51e6..7688f565ec9b 100644
> --- a/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts
> +++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts
> @@ -7,6 +7,7 @@
>  
>  #include <dt-bindings/gpio/gpio.h>
>  #include <dt-bindings/input/input.h>
> +#include <dt-bindings/leds/common.h>
>  #include <dt-bindings/pinctrl/sun4i-a10.h>
>  
>  / {
> @@ -132,6 +133,25 @@ &external_mdio {
>  	ext_rgmii_phy: ethernet-phy@1 {
>  		compatible = "ethernet-phy-ieee802.3-c22";
>  		reg = <1>;
> +
> +		leds {
> +			#address-cells = <1>;
> +			#size-cells = <0>;
> +
> +			led@0 {
> +				reg = <0>;
> +				color = <LED_COLOR_ID_GREEN>;
> +				function = LED_FUNCTION_LAN;
> +				linux,default-trigger = "netdev";
> +			};
> +
> +			led@1 {
> +				reg = <1>;
> +				color = <LED_COLOR_ID_AMBER>;
> +				function = LED_FUNCTION_LAN;
> +				linux,default-trigger = "netdev";
> +			};

Schematic says LED0 is "Yellow" or Amber in this DT. So LED1 should be green.

Also, I'm not sure if trigger really needs to be added, since PHY network
will set it as such.

Best regards,
Jernej

> +		};
>  	};
>  };
>  
> 






^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] arm64: dts: allwiner: h5: OrangePi PC2: add ethernet LEDs
       [not found]   ` <5617fd78-32aa-44f4-9f9c-16349b3f8450@wp.pl>
@ 2025-09-08 22:57     ` Jernej Škrabec
  0 siblings, 0 replies; 4+ messages in thread
From: Jernej Škrabec @ 2025-09-08 22:57 UTC (permalink / raw)
  To: robh, krzk+dt, conor+dt, wens, samuel, devicetree,
	linux-arm-kernel, linux-sunxi, linux-kernel,
	Aleksander Jan Bajkowski

Dne torek, 9. september 2025 ob 00:11:46 Srednjeevropski poletni čas je Aleksander Jan Bajkowski napisal(a):
> Hi Jernej,
> 
> On 9/8/25 16:45, Jernej Škrabec wrote:
> > Dne ponedeljek, 18. avgust 2025 ob 18:35:13 Srednjeevropski poletni čas je Aleksander Jan Bajkowski napisal(a):
> >> This patch adds support for Ethernet LEDs.
> > How did you tested this? According to linux-sunxi wiki, this board has
> > RTL8211E, while LED control is supported only with RTL8211F driver.
> 
> 
> For testing, I used OpenWRT snapshot with kernel 6.12. OpenWRT backported
> patches from kernel 6.16 that add LED control support. Realtek RTL8211E
> supports LED control since commit:
> 708686132ba02659267c0cebcc414348ece389a5 ("net: phy: realtek: Add 
> support for PHY LEDs on RTL8211E")

Ah, I haven't checked the latest code. Alright.

> 
> >
> >> Signed-off-by: Aleksander Jan Bajkowski<olek2@wp.pl>
> >> ---
> >>   .../dts/allwinner/sun50i-h5-orangepi-pc2.dts  | 20 +++++++++++++++++++
> >>   1 file changed, 20 insertions(+)
> >>
> >> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts b/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts
> >> index 0f29da7d51e6..7688f565ec9b 100644
> >> --- a/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts
> >> +++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts
> >> @@ -7,6 +7,7 @@
> >>   
> >>   #include <dt-bindings/gpio/gpio.h>
> >>   #include <dt-bindings/input/input.h>
> >> +#include <dt-bindings/leds/common.h>
> >>   #include <dt-bindings/pinctrl/sun4i-a10.h>
> >>   
> >>   / {
> >> @@ -132,6 +133,25 @@ &external_mdio {
> >>   	ext_rgmii_phy: ethernet-phy@1 {
> >>   		compatible = "ethernet-phy-ieee802.3-c22";
> >>   		reg = <1>;
> >> +
> >> +		leds {
> >> +			#address-cells = <1>;
> >> +			#size-cells = <0>;
> >> +
> >> +			led@0 {
> >> +				reg = <0>;
> >> +				color = <LED_COLOR_ID_GREEN>;
> >> +				function = LED_FUNCTION_LAN;
> >> +				linux,default-trigger = "netdev";
> >> +			};
> >> +
> >> +			led@1 {
> >> +				reg = <1>;
> >> +				color = <LED_COLOR_ID_AMBER>;
> >> +				function = LED_FUNCTION_LAN;
> >> +				linux,default-trigger = "netdev";
> >> +			};
> > Schematic says LED0 is "Yellow" or Amber in this DT. So LED1 should be green.
> >
> > Also, I'm not sure if trigger really needs to be added, since PHY network
> > will set it as such.
> 
> I think there is a mistake in the schematic. Setting the trigger on LED0
> illuminates the green LED. My tests found that the netdev trigger isn't
> set by default.

Ok.

Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com>

Best regards,
Jernej




^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] arm64: dts: allwiner: h5: OrangePi PC2: add ethernet LEDs
  2025-08-18 16:35 [PATCH] arm64: dts: allwiner: h5: OrangePi PC2: add ethernet LEDs Aleksander Jan Bajkowski
  2025-09-08 14:45 ` Jernej Škrabec
@ 2025-09-09  0:24 ` Andre Przywara
  1 sibling, 0 replies; 4+ messages in thread
From: Andre Przywara @ 2025-09-09  0:24 UTC (permalink / raw)
  To: Aleksander Jan Bajkowski
  Cc: robh, krzk+dt, conor+dt, wens, jernej.skrabec, samuel, devicetree,
	linux-arm-kernel, linux-sunxi, linux-kernel

On Mon, 18 Aug 2025 18:35:13 +0200
Aleksander Jan Bajkowski <olek2@wp.pl> wrote:

> This patch adds support for Ethernet LEDs.

So I tried this on my OPi-PC2, but I cannot influence the LEDs. I have
CONFIG_LED_TRIGGER_PHY and CONFIG_LEDS_TRIGGER_NETDEV built in, and I
see mdio_mux-0.2:01:amber:lan and mdio_mux-0.2:01:green:lan in
/sys/class/leds, but anything I write into trigger does not seem to
change the output: it always stays on the network functionality, I
guess because it's still configured to the PHY hardware wired function?

What am I missing?

Cheers,
Andre

> Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
> ---
>  .../dts/allwinner/sun50i-h5-orangepi-pc2.dts  | 20
> +++++++++++++++++++ 1 file changed, 20 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts
> b/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts index
> 0f29da7d51e6..7688f565ec9b 100644 ---
> a/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts +++
> b/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts @@ -7,6
> +7,7 @@ 
>  #include <dt-bindings/gpio/gpio.h>
>  #include <dt-bindings/input/input.h>
> +#include <dt-bindings/leds/common.h>
>  #include <dt-bindings/pinctrl/sun4i-a10.h>
>  
>  / {
> @@ -132,6 +133,25 @@ &external_mdio {
>  	ext_rgmii_phy: ethernet-phy@1 {
>  		compatible = "ethernet-phy-ieee802.3-c22";
>  		reg = <1>;
> +
> +		leds {
> +			#address-cells = <1>;
> +			#size-cells = <0>;
> +
> +			led@0 {
> +				reg = <0>;
> +				color = <LED_COLOR_ID_GREEN>;
> +				function = LED_FUNCTION_LAN;
> +				linux,default-trigger = "netdev";
> +			};
> +
> +			led@1 {
> +				reg = <1>;
> +				color = <LED_COLOR_ID_AMBER>;
> +				function = LED_FUNCTION_LAN;
> +				linux,default-trigger = "netdev";
> +			};
> +		};
>  	};
>  };
>  



^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2025-09-09  6:54 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-08-18 16:35 [PATCH] arm64: dts: allwiner: h5: OrangePi PC2: add ethernet LEDs Aleksander Jan Bajkowski
2025-09-08 14:45 ` Jernej Škrabec
     [not found]   ` <5617fd78-32aa-44f4-9f9c-16349b3f8450@wp.pl>
2025-09-08 22:57     ` Jernej Škrabec
2025-09-09  0:24 ` Andre Przywara

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).