I'm running Arch Linux ARM on an Odroid M1S with kernel 6.12.1. The M1S support was newly added to the 6.12 kernel line, but I'm experiencing issues with the ethernet interface not working. The system detects the ethernet controller but fails to attach to the PHY.
The kernel logs show the following errors:
[code]
[root@alarm ~]# dmesg | grep error
[ 1.787041] EXT4-fs (mmcblk1p2): warning: mounting fs with errors, running e2fsck is recommended
[ 5.573588] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[ 7.038847] rk_gmac-dwmac fe010000.ethernet end0: __stmmac_open: Cannot attach to PHY (error: -19)
[root@alarm ~]# dmesg | grep ethernet
[ 6.435799] rk_gmac-dwmac fe010000.ethernet: IRQ eth_lpi not found
[ 6.436442] rk_gmac-dwmac fe010000.ethernet: IRQ sfty not found
[ 6.443590] rk_gmac-dwmac fe010000.ethernet: clock input or output? (input).
[ 6.445924] rk_gmac-dwmac fe010000.ethernet: Can not read property: tx_delay.
[ 6.446628] rk_gmac-dwmac fe010000.ethernet: set tx_delay to 0x30
[ 6.447210] rk_gmac-dwmac fe010000.ethernet: Can not read property: rx_delay.
[ 6.447853] rk_gmac-dwmac fe010000.ethernet: set rx_delay to 0x10
[ 6.448469] rk_gmac-dwmac fe010000.ethernet: integrated PHY? (no).
[ 6.449083] rk_gmac-dwmac fe010000.ethernet: clock input from PHY
[ 6.457011] rk_gmac-dwmac fe010000.ethernet: init for RGMII_ID
[ 6.457949] rk_gmac-dwmac fe010000.ethernet: User ID: 0x30, Synopsys ID: 0x51
[ 6.458661] rk_gmac-dwmac fe010000.ethernet: DWMAC4/5
[ 6.459172] rk_gmac-dwmac fe010000.ethernet: DMA HW capability register supported
[ 6.459836] rk_gmac-dwmac fe010000.ethernet: RX Checksum Offload Engine supported
[ 6.461282] rk_gmac-dwmac fe010000.ethernet: TX Checksum insertion supported
[ 6.461929] rk_gmac-dwmac fe010000.ethernet: Wake-Up On Lan supported
[ 6.486165] rk_gmac-dwmac fe010000.ethernet: TSO supported
[ 6.486687] rk_gmac-dwmac fe010000.ethernet: Enable RX Mitigation via HW Watchdog Timer
[ 6.487464] rk_gmac-dwmac fe010000.ethernet: device MAC address 3e:5e:fb:07:96:6d
[ 6.488180] rk_gmac-dwmac fe010000.ethernet: Enabled RFS Flow TC (entries=10)
[ 6.488829] rk_gmac-dwmac fe010000.ethernet: TSO feature enabled
[ 6.489409] rk_gmac-dwmac fe010000.ethernet: Using 32/32 bits DMA host/device width
[ 6.852635] rk_gmac-dwmac fe010000.ethernet end0: renamed from eth0
[ 7.037355] rk_gmac-dwmac fe010000.ethernet end0: Register MEM_TYPE_PAGE_POOL RxQ-0
[ 7.038847] rk_gmac-dwmac fe010000.ethernet end0: __stmmac_open: Cannot attach to PHY (error: -19)
[root@alarm ~]# uname -a
Linux alarm 6.12.1-1-aarch64-ARCH #1 SMP PREEMPT_DYNAMIC Fri Nov 22 09:10:49 MST 2024 aarch64 GNU/Linux
[/code]
The ethernet controller is detected and initialized (Realtek RTL8211F), but fails to attach to the PHY. I've compared the device tree with the original Ubuntu image from Hardkernel, which works correctly, but haven't been able to resolve the PHY attachment issue.
Has anyone successfully got the ethernet working on an M1S with the 6.12 kernel? Any suggestions on how to debug this further?