While testing the daily builds of the Debian-Installer (d-i) on the LeMaker Banana Pi (a small, Allwinner A20-based board), I found that within the installer environment, the detection of the external Realtek ethernet PHY connected to the Allwinner A20 GMAC fails upon first loading of the stmmac driver: [ 77.235117] stmmaceth 1c50000.ethernet: no reset control found [ 77.235192] Ring mode enabled [ 77.235202] No HW DMA feature register supported [ 77.235211] Normal descriptors [ 77.235219] TX Checksum insertion supported [ 77.242678] libphy: stmmac: probed [ 77.242708] eth0: No PHY found Just unloading the stmmac module and immediately afterwards modprobing it again results in proper detection of the PHY: [ 148.823456] stmmaceth 1c50000.ethernet: no reset control found [ 148.823487] Ring mode enabled [ 148.823496] No HW DMA feature register supported [ 148.823502] Normal descriptors [ 148.823509] TX Checksum insertion supported [ 148.854654] libphy: stmmac: probed [ 148.854683] eth0: PHY ID 001cc915 at 0 IRQ POLL (stmmac-0:00) active [ 148.854694] eth0: PHY ID 001cc915 at 1 IRQ POLL (stmmac-0:01) On the Banana Pi, the PHY power supply is handled by a GPIO-controlled regulator: gmac: ethernet@01c50000 { pinctrl-names = "default"; pinctrl-0 = <&gmac_pins_rgmii_a>; phy = <&phy1>; phy-mode = "rgmii"; phy-supply = <®_gmac_3v3>; status = "okay"; phy1: ethernet-phy@1 { reg = <1>; }; }; reg_gmac_3v3: gmac-3v3 { compatible = "regulator-fixed"; pinctrl-names = "default"; pinctrl-0 = <&gmac_power_pin_bananapi>; regulator-name = "gmac-3v3"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; startup-delay-us = <50000>; enable-active-high; gpio = <&pio 7 23 0>; }; and this problem did not show up on the hardware-wise rather similar Cubietech Cubietruck (same SoC, same external PHY, but no GPIO-controlled regulator for the PHY). Further tests have shown that increasing the startup-delay for the regulator solves the problem. The current sun7i-a20-bananapi.dts file (in linux-next, intended to go into kernel 3.19) sets startup-delay-us for the PHY's regulator to 50000. On my Banana Pi board, even with a value of 55000, the PHY detection does usually not work on the first probing inside d-i. Increasing the value to 57500 results in a successful probing most of the time, but not always; only setting it to 60000 results in a reliable PHY detection for me. I would therefore like to propose increasing the startup-delay in the Banana Pi dts to a value of 60000. Following is an according patch. Regards, Karsten Karsten Merker (1): ARM: dts: sunxi: Banana Pi: increase startup-delay for the GMAC PHY regulator arch/arm/boot/dts/sun7i-a20-bananapi.dts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- 1.7.10.4 -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html