svollmar Posted May 3, 2017 Posted May 3, 2017 Hi all, first i want to thank all of you for this great software. Problem: No ethernet on mainline 4.11 kernel. I tracked the problem down to a 'ethernet status = "disabled"' in the dtb for the orange pi zero. How to fix it? I have only very little experience with Device tree. 4.11 is ok for the other OPs, i tested the OP One. Kind regards svollmar
Igor Posted May 3, 2017 Posted May 3, 2017 Are you using correct image? There are two zero boards - one has Ethernet, the other doesn't.
zador.blood.stained Posted May 3, 2017 Posted May 3, 2017 It's possible that Ethernet fell out during 4.10->4.11 migration. Should be fixed eventually.
mellaro Posted May 3, 2017 Posted May 3, 2017 Thank god, then i'm not alone with those issues, grabbed all latest images for Zero and no luck. Also, tried installing pi-hole, after reboot many eth0 interfaces, that was right before updates what made Ethernet disappear completely.
martinayotte Posted May 4, 2017 Posted May 4, 2017 Those 4.11 builds are a pretty new. Migration from 4.10 to 4.11 was done on Monday, so less than 48hrs. Although I didn't tried it on OPiZero, I did it on OPiPlus2E, which is also a sun8i-H3, and it is working properly. I will try migrate all my of H3 boards in next few days ! But I'm pretty confident ...
svollmar Posted May 4, 2017 Author Posted May 4, 2017 Can you please give me a hint where i can find the source for the erroneous OPi Zero dtb, to find this kind of problem. All other OPs / H3 are ok - ethernet is enabled in dtb. I can't find anything special in the device tree for the OPi Zero / H2+ in the 4.11 kernel source or in the Armbian repository,.
martinayotte Posted May 4, 2017 Posted May 4, 2017 The OPiZero DT in 4.11 wasn't enabled and didn't have PHY assigned. I added a patch in Armbian builds. Either you wait for next nightly build, or add this patch and build it yourself : diff --git a/arch/arm/boot/dts/sun8i-h2-plus-orangepi-zero.dts b/arch/arm/boot/dts/sun8i-h2-plus-orangepi-zero.dts index e94f196..69a4840 100644 --- a/arch/arm/boot/dts/sun8i-h2-plus-orangepi-zero.dts +++ b/arch/arm/boot/dts/sun8i-h2-plus-orangepi-zero.dts @@ -104,6 +104,15 @@ status = "okay"; }; +&emac { + pinctrl-names = "default"; + phy-supply = <®_vcc3v3>; + phy-handle = <&int_mii_phy>; + phy-mode = "mii"; + allwinner,leds-active-low; + status = "okay"; +}; + &mmc0 { pinctrl-names = "default"; pinctrl-0 = <&mmc0_pins_a>; 1
svollmar Posted May 4, 2017 Author Posted May 4, 2017 Thanks for the fast response. I don't understand why ethernet works on the other OPs, because i can't find the place where the emac is enabled. Neither in the kernel source, nor in the patch set.
martinayotte Posted May 4, 2017 Posted May 4, 2017 In other OPis, the emac is effectively enabled, only OPiZero didn't have it in 4.11. It was in 4.10.
zador.blood.stained Posted May 4, 2017 Posted May 4, 2017 And the source of the problem is - Ethernet driver is still not in mainline, we are using a branch with an old/discontinued Ethernet driver variant which was enabled only for a small number of boards it was tested on. So we have to make patches for other boards, and since this is development/WIP branch not everything is checked during kernel version bumps.
svollmar Posted May 4, 2017 Author Posted May 4, 2017 Thanks for the explanation. It seems more complicated, than i thought first. I will try to build the patched kernel, just to understand a little bit more.
adrb Posted June 4, 2017 Posted June 4, 2017 Hello, On 5/4/2017 at 8:39 PM, zador.blood.stained said: And the source of the problem is - Ethernet driver is still not in mainline, we are using a branch with an old/discontinued Ethernet driver variant which was enabled only for a small number of boards it was tested on. So we have to make patches for other boards, and since this is development/WIP branch not everything is checked during kernel version bumps. I can confirm that simply enabling emac isn't enough for mainline kernel. Why is that, that driver was discontinued? Can you point us to place where We can find some more information about that, so more people can have chance to help?
zador.blood.stained Posted June 4, 2017 Posted June 4, 2017 31 minutes ago, adrb said: Why is that, that driver was discontinued? Because instead of adding a separate driver it had to be integrated into existing dwmac with a significant rework of the base driver. 32 minutes ago, adrb said: Can you point us to place where We can find some more information about that, so more people can have chance to help? https://irclog.whitequark.org/linux-sunxi/2017-06-01#19509304; So the new driver will hopefully land in 4.13 release (~3-4 months from now), so patience will be the most helpful option for us (the second option would be adding a patch to Armbian to work with the existing driver)
Recommended Posts