diff options
author | Emmanuel Vadot <manu@FreeBSD.org> | 2023-12-11 10:29:51 +0000 |
---|---|---|
committer | Emmanuel Vadot <manu@FreeBSD.org> | 2023-12-11 10:31:28 +0000 |
commit | bd0771390ef532ce0ae3f39350acd540125e5620 (patch) | |
tree | bcae9318c32afd3e2c39c2f3a9d406e7eb3864b1 | |
parent | 22029445cbef0ffc71196a6f38cee4738e9a6d0f (diff) | |
download | src-bd0771390ef532ce0ae3f39350acd540125e5620.tar.gz src-bd0771390ef532ce0ae3f39350acd540125e5620.zip |
eqos: Call init earlier
Call the subclassed IF_EQOS_INIT before trying to read the mac, clocks
and reset needs to dealt with before we can read the registers.
-rw-r--r-- | sys/dev/eqos/if_eqos.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/sys/dev/eqos/if_eqos.c b/sys/dev/eqos/if_eqos.c index 0dc476acd520..75e3ca957b48 100644 --- a/sys/dev/eqos/if_eqos.c +++ b/sys/dev/eqos/if_eqos.c @@ -1119,6 +1119,9 @@ eqos_attach(device_t dev) return (ENXIO); } + if ((error = IF_EQOS_INIT(dev))) + return (error); + sc->dev = dev; ver = RD4(sc, GMAC_MAC_VERSION); userver = (ver & GMAC_MAC_VERSION_USERVER_MASK) >> @@ -1142,10 +1145,6 @@ eqos_attach(device_t dev) sc->hw_feature[2], sc->hw_feature[3]); } - - if ((error = IF_EQOS_INIT(dev))) - return (error); - mtx_init(&sc->lock, "eqos lock", MTX_NETWORK_LOCK, MTX_DEF); callout_init_mtx(&sc->callout, &sc->lock, 0); |