aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/firewire
diff options
context:
space:
mode:
authorHidetoshi Shimokawa <simokawa@FreeBSD.org>2008-05-10 13:40:42 +0000
committerHidetoshi Shimokawa <simokawa@FreeBSD.org>2008-05-10 13:40:42 +0000
commitd219022c4ca9798518c8354be494727eb330d8be (patch)
tree8150c5c18d1c83b92c2102350b6f7933034cd406 /sys/dev/firewire
parente15864efd81eb2c3b7e44a36874fe0ddbe2d9638 (diff)
Notes
Diffstat (limited to 'sys/dev/firewire')
-rw-r--r--sys/dev/firewire/firewire.c5
-rw-r--r--sys/dev/firewire/fwohci.c3
2 files changed, 4 insertions, 4 deletions
diff --git a/sys/dev/firewire/firewire.c b/sys/dev/firewire/firewire.c
index c7767dae39be..25e0ed2e5125 100644
--- a/sys/dev/firewire/firewire.c
+++ b/sys/dev/firewire/firewire.c
@@ -508,6 +508,9 @@ firewire_detach(device_t dev)
printf("firewire probe thread didn't die\n");
mtx_unlock(&fc->wait_lock);
+ if (fc->arq !=0 && fc->arq->maxq > 0)
+ fw_drain_txq(fc);
+
if ((err = fwdev_destroydev(sc)) != 0)
return err;
@@ -518,7 +521,7 @@ firewire_detach(device_t dev)
callout_stop(&fc->bmr_callout);
callout_stop(&fc->busprobe_callout);
- /* XXX xfree_free and untimeout on all xfers */
+ /* XXX xfer_free and untimeout on all xfers */
for (fwdev = STAILQ_FIRST(&fc->devices); fwdev != NULL;
fwdev = fwdev_next) {
fwdev_next = STAILQ_NEXT(fwdev, link);
diff --git a/sys/dev/firewire/fwohci.c b/sys/dev/firewire/fwohci.c
index 889338767f7e..1c2573b16a5d 100644
--- a/sys/dev/firewire/fwohci.c
+++ b/sys/dev/firewire/fwohci.c
@@ -1758,9 +1758,6 @@ fwohci_stop(struct fwohci_softc *sc, device_t dev)
OWRITE(sc, OHCI_ITCTLCLR(i), OHCI_CNTL_DMA_RUN);
}
- if (sc->fc.arq !=0 && sc->fc.arq->maxq > 0)
- fw_drain_txq(&sc->fc);
-
#if 0 /* Let dcons(4) be accessed */
/* Stop interrupt */
OWRITE(sc, FWOHCI_INTMASKCLR,