Hi Andrew, On Mon, Jul 27, 2020 at 04:14:32AM +0200, Andrew Lunn wrote: > On Mon, Jul 27, 2020 at 05:06:31AM +0300, Laurent Pinchart wrote: > > On Mon, Jul 27, 2020 at 04:24:02AM +0300, Laurent Pinchart wrote: > > > On Mon, Apr 27, 2020 at 10:08:04PM +0800, Fugang Duan wrote: > > > > This reverts commit 29ae6bd1b0d8a57d7c00ab12cbb949fc41986eef. > > > > > > > > The commit breaks ethernet function on i.MX6SX, i.MX7D, i.MX8MM, > > > > i.MX8MQ, and i.MX8QXP platforms. Boot yocto system by NFS mounting > > > > rootfs will be failed with the commit. > > > > > > I'm afraid this commit breaks networking on i.MX7D for me :-( My board > > > is configured to boot over NFS root with IP autoconfiguration through > > > DHCP. The DHCP request goes out, the reply it sent back by the server, > > > but never noticed by the fec driver. > > > > > > v5.7 works fine. As 29ae6bd1b0d8a57d7c00ab12cbb949fc41986eef was merged > > > during the v5.8 merge window, I suspect something else cropped in > > > between 29ae6bd1b0d8a57d7c00ab12cbb949fc41986eef and this patch that > > > needs to be reverted too. We're close to v5.8 and it would be annoying > > > to see this regression ending up in the released kernel. I can test > > > patches, but I'm not familiar enough with the driver (or the networking > > > subsystem) to fix the issue myself. > > > > If it can be of any help, I've confirmed that, to get the network back > > to usable state from v5.8-rc6, I have to revert all patches up to this > > one. This is the top of my branch, on top of v5.8-rc6: > > > > 5bbe80c9efea Revert "net: ethernet: fec: Revert "net: ethernet: fec: > > Replace interrupt driven MDIO with polled IO"" > > 5462896a08c1 Revert "net: ethernet: fec: Replace interrupt driven MDIO with > > polled IO" > > 824a82e2bdfa Revert "net: ethernet: fec: move GPR register offset and bit > > into DT" > > bfe330591cab Revert "net: fec: disable correct clk in the err path of > > fec_enet_clk_enable" > > 109958cad578 Revert "net: ethernet: fec: prevent tx starvation under high > > rx load" > > OK. > > What PHY are you using? A Micrel?
KSZ9031RNXIA > And which DT file? It's out of tree. &fec1 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_enet1>; assigned-clocks = <&clks IMX7D_ENET1_TIME_ROOT_SRC>, <&clks IMX7D_ENET1_TIME_ROOT_CLK>; assigned-clock-parents = <&clks IMX7D_PLL_ENET_MAIN_100M_CLK>; assigned-clock-rates = <0>, <100000000>; phy-mode = "rgmii"; phy-handle = <ðphy0>; phy-reset-gpios = <&gpio1 13 GPIO_ACTIVE_LOW>; phy-supply = <®_3v3_sw>; fsl,magic-packet; status = "okay"; mdio { #address-cells = <1>; #size-cells = <0>; ethphy0: ethernet-phy@0 { reg = <1>; }; ethphy1: ethernet-phy@1 { reg = <2>; }; }; }; I can provide the full DT if needed. -- Regards, Laurent Pinchart