diff options
author | Damien Bergamini <damien@cvs.openbsd.org> | 2006-11-01 11:52:25 +0000 |
---|---|---|
committer | Damien Bergamini <damien@cvs.openbsd.org> | 2006-11-01 11:52:25 +0000 |
commit | 7a1fa2b5731eca7a9e236138d7037640048a5ea5 (patch) | |
tree | 0db027f3c3953a73c55e6096184269008f0f71ff /sys/dev/usb | |
parent | 567ffd3016f89c359231960114bdf13d61ddbf31 (diff) |
abort bulk-in and bulk-out pipes in zyd_stop() before freeing the
Rx/Tx xfer lists.
Diffstat (limited to 'sys/dev/usb')
-rw-r--r-- | sys/dev/usb/if_zyd.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/dev/usb/if_zyd.c b/sys/dev/usb/if_zyd.c index a8fc0ea2787..b66aa51ab89 100644 --- a/sys/dev/usb/if_zyd.c +++ b/sys/dev/usb/if_zyd.c @@ -1,4 +1,4 @@ -/* $OpenBSD: if_zyd.c,v 1.33 2006/10/23 18:08:34 damien Exp $ */ +/* $OpenBSD: if_zyd.c,v 1.34 2006/11/01 11:52:24 damien Exp $ */ /*- * Copyright (c) 2006 by Damien Bergamini <damien.bergamini@free.fr> @@ -1907,6 +1907,9 @@ zyd_stop(struct ifnet *ifp, int disable) /* disable interrupts */ (void)zyd_write32(sc, ZYD_CR_INTERRUPT, 0); + usbd_abort_pipe(sc->zyd_ep[ZYD_ENDPT_BIN]); + usbd_abort_pipe(sc->zyd_ep[ZYD_ENDPT_BOUT]); + zyd_free_rx_list(sc); zyd_free_tx_list(sc); } |