codykl Posted May 16, 2019 Posted May 16, 2019 (edited) Armbianmonitor: http://ix.io/1JeV Ethernet does not appear to be working on the latest versions of Armbian with pine64 512mb model (has only 10/100MBps Eth) Current Version: ARMBIAN 5.83 stable Debian GNU/Linux 9 (stretch) 4.19.38-sunxi64 - I have tried 2 boards in case its a hardware issue, no go. - Ethernet works with Armbian Xenial (3.10 legacy kernel) - The network port shows activity when initially powering up, but when it begins boot lights go out. - I have tried many older and newer kernels, including the new 5.1.0 dev kernel, with no luck. - Eth0 show up with command "ip address" but not with "ifconfig" - When I try running "sudo ethtool eth0" I get errors with "Device or resource busy" Edited May 16, 2019 by codykl
martinayotte Posted May 16, 2019 Posted May 16, 2019 1 hour ago, codykl said: including the new 5.10 dev kernel, with no luck. (You mean 5.1.0 ... ) Mine is working, but I have 2GB RAM : root@pine64:~# ifconfig eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 10.111.111.53 netmask 255.255.255.0 broadcast 10.111.111.255 inet6 fe80::fe21:f2d3:1f4b:5ead prefixlen 64 scopeid 0x20<link> ether 02:ba:1b:27:72:df txqueuelen 1000 (Ethernet) RX packets 582289 bytes 62839808 (59.9 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 10759 bytes 817532 (798.3 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 device interrupt 32 root@pine64:~# ethtool eth0 Settings for eth0: Supported ports: [ TP MII ] Supported link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Half 1000baseT/Full Supported pause frame use: Symmetric Receive-only Supports auto-negotiation: Yes Advertised link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Half 1000baseT/Full Advertised pause frame use: No Advertised auto-negotiation: Yes Link partner advertised link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full Link partner advertised pause frame use: Symmetric Link partner advertised auto-negotiation: Yes Speed: 100Mb/s Duplex: Full Port: MII PHYAD: 1 Transceiver: internal Auto-negotiation: on Supports Wake-on: d Wake-on: d Current message level: 0x0000003f (63) drv probe link timer ifdown ifup Link detected: yes
codykl Posted May 16, 2019 Author Posted May 16, 2019 yes 5.1.0 I suspect it has something to do with difference in the plus and non plus model. "Network 10/100/1000Mbps Ethernet(PINE A64+ version), 10/100Mbps Ethernet(PINE A64 version)" https://wiki.pine64.org/index.php/PINE_A64_Main_Page root@pine64:~# ethtool eth0 Settings for eth0: Cannot get device settings: Device or resource busy Cannot get wake-on-lan settings: Device or resource busy Cannot get message level: Device or resource busy Cannot get link status: Device or resource busy No data available
codykl Posted May 16, 2019 Author Posted May 16, 2019 These seem related [ 2.206430] dwmac-sun8i 1c30000.ethernet: EMAC reset timeout [ 2.206554] dwmac-sun8i 1c30000.ethernet: Dropping the link to regulator.6 [ 2.206634] dwmac-sun8i: probe of 1c30000.ethernet failed with error -14 [ 9.976240] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready [ 9.976461] platform 1c30000.ethernet eth0: Could not attach to PHY [ 9.976471] platform 1c30000.ethernet eth0: stmmac_open: Cannot attach to PHY (error: -19)
martinayotte Posted May 16, 2019 Posted May 16, 2019 16 minutes ago, codykl said: This message seems to repeat a few times in the log. Can you check what "cat /proc/device-tree/model" is giving ? If it reports "Pine64+" instead of "Pine64", try copying /boot/dtb/allwinner/sun50i-a64-pine64.dtb over /boot/dtb/allwinner/sun50i-a64-pine64-plus.dtb and reboot.
codykl Posted May 16, 2019 Author Posted May 16, 2019 57 minutes ago, martinayotte said: Can you check what "cat /proc/device-tree/model" is giving ? If it reports "Pine64+" instead of "Pine64", try copying /boot/dtb/allwinner/sun50i-a64-pine64.dtb over /boot/dtb/allwinner/sun50i-a64-pine64-plus.dtb and reboot. It does return Pine64+ Copied... It works now. Thanks
martinayotte Posted May 17, 2019 Posted May 17, 2019 3 hours ago, codykl said: Copied... It works now. Thanks This mean that Armbian U-Boot has "fdtfile" hardcoded to /boot/dtb/allwinner/sun50i-a64-pine64-plus.dtb. Another way to workaround it is to edit /boot/armbianEnv.txt to add "fdtfile=/boot/dtb/allwinner/sun50i-a64-pine64.dtb" ...
Paraplegic Racehorse Posted February 20, 2020 Posted February 20, 2020 On 5/16/2019 at 5:58 PM, martinayotte said: This mean that Armbian U-Boot has "fdtfile" hardcoded to /boot/dtb/allwinner/sun50i-a64-pine64-plus.dtb. Another way to workaround it is to edit /boot/armbianEnv.txt to add "fdtfile=/boot/dtb/allwinner/sun50i-a64-pine64.dtb" ... I had this same problem. Adding this edit to /boot/armbianEnv.txt borked the system and rendered it unbootable. Copying the files, as mentioned above, worked very well.
martinayotte Posted February 20, 2020 Posted February 20, 2020 2 hours ago, Paraplegic Racehorse said: Adding this edit to /boot/armbianEnv.txt borked the system and rendered it unbootable. In fact, this is because I've made a typo : it should not include the /boot/dtb/ path, so it should work using "fdtfile=/allwinner/sun50i-a64-pine64.dtb", because the /boot/boot.scr will append /boot/dtb path itself.
Paraplegic Racehorse Posted February 21, 2020 Posted February 21, 2020 6 hours ago, martinayotte said: In fact, this is because I've made a typo : it should not include the /boot/dtb/ path, so it should work using "fdtfile=/allwinner/sun50i-a64-pine64.dtb", because the /boot/boot.scr will append /boot/dtb path itself. Tried this on a different SD card for a different board (same model, serial numbers differ by 2) and it borked the system and rendered it unbootable. Again, copying over the files worked.
Daniel B Posted October 25, 2020 Posted October 25, 2020 I added the following to /boot/armbianEnv.txt and it worked: fdtfile=allwinner/sun50i-a64-pine64.dtb Apparently, it is necessary to remove the leading slash.
Recommended Posts