Re: No dwc0 on bananapi m1 with Linux 5.10 devicetree
Ian Lepore <[email protected]>
| Newsgroups | gmane.os.freebsd.devel.arm |
|---|---|
| Message-ID | <[email protected]> |
On Sun, 2021-04-11 at 21:37 +0200, Emmanuel Vadot wrote: > On Sun, 11 Apr 2021 09:24:33 +0000 > qroxana via freebsd-arm <[email protected]> wrote: > > > It seems the dwc0 no longer works after > > 6be3386466ab79a84b48429ae66244f21526d3df > > > > dwc0: <A20 Gigabit Ethernet Controller> mem 0x1c50000-0x1c5ffff irq > > 72 on simplebus0 > > dwc0: Can't reset DWC. > > device_attach: dwc0 attach returned 6 > > > > I've tried to revert this change on my bananapi m1 and dwc0 worked > > again. > > > > commit e7ffa3b5ce04742455c6bd4d8af0fdedd9978c77 > > Author: Emmanuel Vadot <[email protected]> > > Date: Sun Jan 17 19:02:46 2021 +0100 > > > > Import devicetree files from Linux 5.10 > > > > diff --git a/src/arm/sun7i-a20-bananapi.dts b/src/arm/sun7i-a20- > > bananapi.dts > > index bb3987e..0b3d9ae 100644 > > --- a/src/arm/sun7i-a20-bananapi.dts > > +++ b/src/arm/sun7i-a20-bananapi.dts > > @@ -132,7 +132,7 @@ > > pinctrl-names = "default"; > > pinctrl-0 = <&gmac_rgmii_pins>; > > phy-handle = <&phy1>; > > - phy-mode = "rgmii"; > > + phy-mode = "rgmii-id"; > > phy-supply = <®_gmac_3v3>; > > status = "okay"; > > }; > > > Hi, > > Sorry about that, > Upstream did warned me about this change but I was sure that we did > nothing with the phy-mode in dwc, should have check better. > > Please try this patch (I have no allwinner dwc based board here) : > From 72c709db9ec3eb9a132ffe893b1e95e29bca62ac Mon Sep 17 00:00:00 > 2001 > From: Emmanuel Vadot <[email protected]> > Date: Sun, 11 Apr 2021 21:34:57 +0200 > Subject: [PATCH] dwc: Cope with recent dts changes > > Add rgmii-id to the list of mode where we need to configure it as > rgmii. > --- > sys/dev/dwc/if_dwc.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/sys/dev/dwc/if_dwc.c b/sys/dev/dwc/if_dwc.c > index 776d0d0dc39..0549874a977 100644 > --- a/sys/dev/dwc/if_dwc.c > +++ b/sys/dev/dwc/if_dwc.c > @@ -1575,7 +1575,7 @@ dwc_attach(device_t dev) > > node = ofw_bus_get_node(dev); > if (OF_getprop_alloc(node, "phy-mode", (void **)&phy_mode)) { > - if (strcmp(phy_mode, "rgmii") == 0) > + if (strcmp(phy_mode, "rgmii") == 0 || strcmp(phy_mode, > "rgmii-id") == 0) sc->phy_mode = PHY_MODE_RGMII; > if (strcmp(phy_mode, "rmii") == 0) > sc->phy_mode = PHY_MODE_RMII; > This should probably be: node = ofw_bus_get_node(dev); if (mii_contype_is_rgmii(mii_fdt_get_contype(node))) sc->phy_mode = PHY_MODE_RGMII; -- Ian _______________________________________________ [email protected] mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-arm To unsubscribe, send any mail to "[email protected]"