From c51ef9c35267fee5fbc8b7bea0411cbd3440a47d Mon Sep 17 00:00:00 2001 From: yongari Date: Sun, 28 Nov 2010 01:16:37 +0000 Subject: [PATCH] Do full controller initialization in axe_reset() for controllers that require special configuration from EEPROM. This will put controllers into known sane state. --- sys/dev/usb/net/if_axe.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/sys/dev/usb/net/if_axe.c b/sys/dev/usb/net/if_axe.c index 847c7e717ae4..5ee9c773a822 100644 --- a/sys/dev/usb/net/if_axe.c +++ b/sys/dev/usb/net/if_axe.c @@ -671,6 +671,12 @@ axe_reset(struct axe_softc *sc) /* Wait a little while for the chip to get its brains in order. */ uether_pause(&sc->sc_ue, hz / 100); + + /* Reinitialize controller to achieve full reset. */ + if (sc->sc_flags & AXE_FLAG_178) + axe_ax88178_init(sc); + else if (sc->sc_flags & AXE_FLAG_772) + axe_ax88772_init(sc); } static void