Re: Question about support for orange pi 5 pro (dts) [was: net: phy: motorcomm: YT8531S missing LED ops and default init]
From: Dennis Gilmore <hidden>
Date: 2026-06-04 17:27:24
Hi Frank, Yao Zi, I am reporting a driver bug that affects the YT6801 on the Orange Pi 5 Pro: the RJ45 LEDs (link/activity) never illuminate. I had not noticed it, but I see it now that I look. A user reached out to see if it was something missing in the devicetree, and I believe it is a driver bug. Environment: - Orange Pi 5 Pro, RK3588S SoC - YT6801 NIC (PCI ID 1f0a:6801) on pcie2x1l2 - Kernel: mainline, drivers/net/ethernet/stmicro/stmmac/dwmac-motorcomm.c + drivers/net/phy/motorcomm.c Root cause: The YT6801's internal EPHY presents as YT8531S (PHY_ID 0x4f51e91a). There are two problems in motorcomm.c: 1. The PHY_ID_YT8531S table entry (around line 3059) is missing led_hw_is_supported, led_hw_control_set, and led_hw_control_get ops. The adjacent PHY_ID_YT8531 entry has all three. 2. More fundamentally, the YT6801 is a PCI device with no OF node. The phylib LED hw offload framework only calls those ops when LED child nodes exist in DT — which they never will for a PCI device's internal PHY. The yt8521_config_init (used by YT8531S) never writes any LED registers, so the chip's power-on defaults govern LED behavior, and apparently those defaults leave the LEDs off. Suggested fix: - Add LED hw ops to the PHY_ID_YT8531S table entry (same three functions as YT8531 uses). - In yt8521_config_init (or a new helper called from there), when of_node is NULL, write sensible LED register defaults. Something like: - LED0 (link): YT8521_LED_1000_ON_EN | YT8521_LED_100_ON_EN | YT8521_LED_10_ON_EN - LED1 (activity): YT8521_LED_TXACT_BLK_EN | YT8521_LED_RXACT_BLK_EN Happy to test any patch on the Orange Pi 5 Pro hardware. Dennis