Orange Pi PHYnal Fix
by Anne Macedo
I decided to get back into fixing the Orange Pi One Plus ethernet.
My workflow is as follows:
devtool modify virtual/kernel
devtool build linux-mainline
bitbake core-image-minimal
bmaptool copy --bmap orange-pi-one-plus/tmp/deploy/images/orange-pi-one-plus/core-image-minimal-orange-pi-one-plus.rootfs.wic.bmap orange-pi-one-plus/tmp/deploy/images/orange-pi-one-plus/core-image-minimal-orange-pi-one-plus.rootfs.wic.gz /tmp/opi
I removed this change [1] from meta-sunxi so that u-boot reports no ethernet and add the line
CORE_IMAGE_EXTRA_INSTALL += " kernel-modules"
So that the dwmac-sun8i
kernel module starts.
Without my change:
Configuring network interfaces... [ 5.992589] dwmac-sun8i 5020000.ethernet eth0: Register MEM_TYPE_PAGE_POOL RxQ-0
[ 6.000823] dwmac-sun8i 5020000.ethernet eth0: __stmmac_open: Cannot attach to PHY (error: -19)
ifconfig
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
The ethernet LED blinks, but there’s not PHY attached to it.
It’s also important to note that I reverted changes in U-boot, so there’s no early ethernet :)
Net: No ethernet found.
After my changes:
Configuring network interfaces... [ 6.060020] dwmac-sun8i 5020000.ethernet eth0: Register MEM_TYPE_PAGE_POOL RxQ-0
[ 6.069460] dwmac-sun8i 5020000.ethernet eth0: PHY [stmmac-0:01] driver [RTL8211E Gigabit Ethernet] (irq=POLL)
[ 6.079547] dwmac-sun8i 5020000.ethernet eth0: No Safety Features support found
[ 6.086879] dwmac-sun8i 5020000.ethernet eth0: No MAC Management Counters available
[ 6.094553] dwmac-sun8i 5020000.ethernet eth0: PTP not supported by HW
[ 6.101594] dwmac-sun8i 5020000.ethernet eth0: configuring for phy/rgmii-id link mode
Formatting patch and sending email
git format-patch HEAD~1
./scripts/checkpatch.pl 0001-ARM64-dts-sunxi-Add-compatible-properties-to-Realtek.patch
# Send to myself
git send-email --to "Anne Macedo <retpolanne@posteo.net>" 0001-arm64-dts-allwinner-Orange-Pi-One-Plus-PHY-support.patch
Lessons learned on PHYs and voltage regulators
Andre Przywara, who reviewed my patch, kindly explained a whole lot of things that I’m going to include on the next posts. See ya!
References
[1] add u-boot ethernet support to orange pi one plus (h6) #389
tags: orangepi - phy