git: 7854d0f6584d - main - dwc: Get the mii clock after calling IF_DWC_INIT
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 06 Oct 2023 17:06:01 UTC
The branch main has been updated by manu: URL: https://cgit.FreeBSD.org/src/commit/?id=7854d0f6584d259fd7f13595e3d3a4f157db9339 commit 7854d0f6584d259fd7f13595e3d3a4f157db9339 Author: Emmanuel Vadot <manu@FreeBSD.org> AuthorDate: 2023-10-06 15:43:09 +0000 Commit: Emmanuel Vadot <manu@FreeBSD.org> CommitDate: 2023-10-06 17:05:40 +0000 dwc: Get the mii clock after calling IF_DWC_INIT We need to calculate it based on the clocks and they aren't started before IF_DWC_INIT. --- sys/dev/dwc/if_dwc.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/sys/dev/dwc/if_dwc.c b/sys/dev/dwc/if_dwc.c index ffcf3e8d6afd..d212c2db131f 100644 --- a/sys/dev/dwc/if_dwc.c +++ b/sys/dev/dwc/if_dwc.c @@ -504,7 +504,6 @@ dwc_attach(device_t dev) sc->rx_idx = 0; sc->tx_desccount = TX_DESC_COUNT; sc->tx_mapcount = 0; - sc->mii_clk = IF_DWC_MII_CLK(dev); sc->node = ofw_bus_get_node(dev); sc->phy_mode = mii_fdt_get_contype(sc->node); @@ -552,6 +551,11 @@ dwc_attach(device_t dev) if (IF_DWC_INIT(dev) != 0) return (ENXIO); + if ((sc->mii_clk = IF_DWC_MII_CLK(dev)) < 0) { + device_printf(dev, "Cannot get mii clock value %d\n", -sc->mii_clk); + return (ENXIO); + } + if (bus_alloc_resources(dev, dwc_spec, sc->res)) { device_printf(dev, "could not allocate resources\n"); return (ENXIO);