Debian bookworm: RJ45 ethernet interface not working

I recently bought a Honeycomb LX2K board and am unable to get the RJ45 ethernet port running. The four 10G SFP+ ethernet ports (dpmac{7…10}) work just fine.

Board: CEX7 rev2.1 / ClearFog rev1.3
UEFI: lx2160acex7_2000_700_3200_8_5_2_flexspi_nor_ee5c233
OS: Debian bookworm
Kernel: 5.18.0-2-arm64 Debian 5.18.5-1 (2022-06-16)

The kernel spits out errors trying to probe the interface:

[    7.671288] fsl_dpaa2_eth dpni.0: Adding to iommu group 1
[    8.438928] fsl_dpaa2_eth dpni.0 (unnamed net_device) (uninitialized): phylink_fwnode_phy_connect() = -110
[    8.448578] fsl_dpaa2_eth dpni.0 (unnamed net_device) (uninitialized): Error connecting to the MAC endpoint: -ETIMEDOUT
[    8.782403] fsl_dpaa2_eth dpni.0: fsl_mc_driver_probe failed: -110
[    8.788585] fsl_dpaa2_eth: probe of dpni.0 failed with error -110

Do i need additional patches to mainline stable kernels to get this port up?

I built a kernel (5.18.2-cex7-arm64) with sources from branch linux-5.18.y-cex7 from the SolidRun linux-stable GitHub repository. No difference with the RJ45 ethernet port, but at least the SD card and the eMMC now get detected by the OS. Kernel still reports:

[    9.052559] fsl_dpaa2_eth dpni.0 (unnamed net_device) (uninitialized): phylink_fwnode_phy_connect() = -110
[    9.062211] fsl_dpaa2_eth dpni.0 (unnamed net_device) (uninitialized): Error connecting to the MAC endpoint: -ETIMEDOUT
[    9.378591] fsl_dpaa2_eth dpni.0: fsl_mc_driver_probe failed: -110
[    9.384772] fsl_dpaa2_eth: probe of dpni.0 failed with error -110

Do you have the phy driver enabled in your kernel config? It is an AR8035

Currently i have set CONFIG_AT803X_PHY=m in my kernel config. Module is loaded and shows up in lsmod output. Does it need to be baked into the kernel so it is available during early initialization?

it shouldn’t. Does the network interface work in edk2 shell?

I think this is what you want to see:

=> mii device
MII devices: 'mdio@8b96000' 
Current device: 'mdio@8b96000'
=> mii info 8b96000
PHY 0x00: OUI = 0x1374, Model = 0x07, Rev = 0x07, 1000baseX, FDX
=> mii dump 8b96000 0
0.     (3100)                 -- PHY control register --
  (8000:0000) 0.15    =     0     reset
  (4000:0000) 0.14    =     0     loopback
  (2040:2000) 0. 6,13 =   b01    speed selection = 100 Mbps
  (1000:1000) 0.12    =     1     A/N enable
  (0800:0000) 0.11    =     0     power-down
  (0400:0000) 0.10    =     0     isolate
  (0200:0000) 0. 9    =     0     restart A/N
  (0100:0100) 0. 8    =     1     duplex = full
  (0080:0000) 0. 7    =     0     collision test enable
  (003f:0000) 0. 5- 0 =     0     (reserved)

But there is also this output:

Net:   Could not get PHY for mdio@8b96000: addr 1

I also tried to boot the ubuntu 20.04 image lx2160acex7_2000_700_3200_8_5_2-f57e117 from SD card. Shows same output in kernel:’

[    5.121823] fsl_dpaa2_eth dpni.0: Adding to iommu group 2
[    5.849953] fsl_dpaa2_eth dpni.0 (unnamed net_device) (uninitialized): phylink_fwnode_phy_connect() = 9
[    5.859518] fsl_dpaa2_eth dpni.0 (unnamed net_device) (uninitialized): Error connecting to the MAC endt
[    5.919987] fsl_dpaa2_eth dpni.0: fsl_mc_driver_probe failed: -19

All four 10G interfaces work, the 1G RJ45 port does not.

Is this a hardware defect?

I am checking on this. I will follow up with you in a bit.

The MC firmware on the board is a bit outdated. Is there some way i can flash the new 10.34.0 firmware release to the MC from linux or the sd card and see if that helps?


That firmware is built into the edk2 firmware file. However it would only change compatiblity with the SFP+ functionality. The RJ45 has proven to be functional with all previous versions of the firmware. The issue you are seeing has nothing to do with the network packet processor, it is the fact that your PHY is not being discovered on the mdio bus.

Should i check the board for visual damages like missing/stripped of capacitors, solder paste blobs, etc. around U20 ?

EDIT: Connection between PHY and RJ45 seems fine, LEDs start blinking with connected cable. So the PHY is at least powered up and reactive.