Module Name:    src
Committed By:   mrg
Date:           Tue Mar  6 03:35:30 UTC 2012

Modified Files:
        src/sys/dev/usb: ehci.c if_aue.c if_axe.c if_udav.c if_url.c ohci.c
            stuirda.c ubt.c ucom.c ucycom.c ugen.c uhci.c uhid.c uhso.c uirda.c
            ulpt.c umass.c umass_scsipi.c urio.c usbdi_util.c usbdi_util.h
            uscanner.c usscanner.c ustir.c utoppy.c

Log Message:
pull down from usbmp branch:

- rename usb_detach_{wake,waitup}() to usb_detach_{wake,waitup}old()
- use some c99 struct .initialisers


To generate a diff of this commit:
cvs rdiff -u -r1.185 -r1.186 src/sys/dev/usb/ehci.c
cvs rdiff -u -r1.124 -r1.125 src/sys/dev/usb/if_aue.c
cvs rdiff -u -r1.52 -r1.53 src/sys/dev/usb/if_axe.c
cvs rdiff -u -r1.35 -r1.36 src/sys/dev/usb/if_udav.c
cvs rdiff -u -r1.41 -r1.42 src/sys/dev/usb/if_url.c \
    src/sys/dev/usb/umass_scsipi.c src/sys/dev/usb/usbdi_util.h
cvs rdiff -u -r1.220 -r1.221 src/sys/dev/usb/ohci.c
cvs rdiff -u -r1.13 -r1.14 src/sys/dev/usb/stuirda.c
cvs rdiff -u -r1.44 -r1.45 src/sys/dev/usb/ubt.c
cvs rdiff -u -r1.98 -r1.99 src/sys/dev/usb/ucom.c
cvs rdiff -u -r1.33 -r1.34 src/sys/dev/usb/ucycom.c
cvs rdiff -u -r1.117 -r1.118 src/sys/dev/usb/ugen.c
cvs rdiff -u -r1.244 -r1.245 src/sys/dev/usb/uhci.c
cvs rdiff -u -r1.85 -r1.86 src/sys/dev/usb/uhid.c
cvs rdiff -u -r1.7 -r1.8 src/sys/dev/usb/uhso.c
cvs rdiff -u -r1.36 -r1.37 src/sys/dev/usb/uirda.c
cvs rdiff -u -r1.89 -r1.90 src/sys/dev/usb/ulpt.c
cvs rdiff -u -r1.143 -r1.144 src/sys/dev/usb/umass.c
cvs rdiff -u -r1.38 -r1.39 src/sys/dev/usb/urio.c
cvs rdiff -u -r1.55 -r1.56 src/sys/dev/usb/usbdi_util.c
cvs rdiff -u -r1.71 -r1.72 src/sys/dev/usb/uscanner.c
cvs rdiff -u -r1.34 -r1.35 src/sys/dev/usb/usscanner.c
cvs rdiff -u -r1.31 -r1.32 src/sys/dev/usb/ustir.c
cvs rdiff -u -r1.17 -r1.18 src/sys/dev/usb/utoppy.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/usb/ehci.c
diff -u src/sys/dev/usb/ehci.c:1.185 src/sys/dev/usb/ehci.c:1.186
--- src/sys/dev/usb/ehci.c:1.185	Tue Mar  6 02:49:02 2012
+++ src/sys/dev/usb/ehci.c	Tue Mar  6 03:35:29 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: ehci.c,v 1.185 2012/03/06 02:49:02 mrg Exp $ */
+/*	$NetBSD: ehci.c,v 1.186 2012/03/06 03:35:29 mrg Exp $ */
 
 /*
  * Copyright (c) 2004-2008 The NetBSD Foundation, Inc.
@@ -52,7 +52,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ehci.c,v 1.185 2012/03/06 02:49:02 mrg Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ehci.c,v 1.186 2012/03/06 03:35:29 mrg Exp $");
 
 #include "ohci.h"
 #include "uhci.h"
@@ -246,67 +246,67 @@ Static void		ehci_dump_exfer(struct ehci
 #define ehci_active_intr_list(ex) ((ex)->inext.tqe_prev != NULL)
 
 Static const struct usbd_bus_methods ehci_bus_methods = {
-	ehci_open,
-	ehci_softintr,
-	ehci_poll,
-	ehci_allocm,
-	ehci_freem,
-	ehci_allocx,
-	ehci_freex,
+	.open_pipe =	ehci_open,
+	.soft_intr =	ehci_softintr,
+	.do_poll =	ehci_poll,
+	.allocm =	ehci_allocm,
+	.freem =	ehci_freem,
+	.allocx =	ehci_allocx,
+	.freex =	ehci_freex,
 };
 
 Static const struct usbd_pipe_methods ehci_root_ctrl_methods = {
-	ehci_root_ctrl_transfer,
-	ehci_root_ctrl_start,
-	ehci_root_ctrl_abort,
-	ehci_root_ctrl_close,
-	ehci_noop,
-	ehci_root_ctrl_done,
+	.transfer =	ehci_root_ctrl_transfer,
+	.start =	ehci_root_ctrl_start,
+	.abort =	ehci_root_ctrl_abort,
+	.close =	ehci_root_ctrl_close,
+	.cleartoggle =	ehci_noop,
+	.done =		ehci_root_ctrl_done,
 };
 
 Static const struct usbd_pipe_methods ehci_root_intr_methods = {
-	ehci_root_intr_transfer,
-	ehci_root_intr_start,
-	ehci_root_intr_abort,
-	ehci_root_intr_close,
-	ehci_noop,
-	ehci_root_intr_done,
+	.transfer =	ehci_root_intr_transfer,
+	.start =	ehci_root_intr_start,
+	.abort =	ehci_root_intr_abort,
+	.close =	ehci_root_intr_close,
+	.cleartoggle =	ehci_noop,
+	.done =		ehci_root_intr_done,
 };
 
 Static const struct usbd_pipe_methods ehci_device_ctrl_methods = {
-	ehci_device_ctrl_transfer,
-	ehci_device_ctrl_start,
-	ehci_device_ctrl_abort,
-	ehci_device_ctrl_close,
-	ehci_noop,
-	ehci_device_ctrl_done,
+	.transfer =	ehci_device_ctrl_transfer,
+	.start =	ehci_device_ctrl_start,
+	.abort =	ehci_device_ctrl_abort,
+	.close =	ehci_device_ctrl_close,
+	.cleartoggle =	ehci_noop,
+	.done =		ehci_device_ctrl_done,
 };
 
 Static const struct usbd_pipe_methods ehci_device_intr_methods = {
-	ehci_device_intr_transfer,
-	ehci_device_intr_start,
-	ehci_device_intr_abort,
-	ehci_device_intr_close,
-	ehci_device_clear_toggle,
-	ehci_device_intr_done,
+	.transfer =	ehci_device_intr_transfer,
+	.start =	ehci_device_intr_start,
+	.abort =	ehci_device_intr_abort,
+	.close =	ehci_device_intr_close,
+	.cleartoggle =	ehci_device_clear_toggle,
+	.done =		ehci_device_intr_done,
 };
 
 Static const struct usbd_pipe_methods ehci_device_bulk_methods = {
-	ehci_device_bulk_transfer,
-	ehci_device_bulk_start,
-	ehci_device_bulk_abort,
-	ehci_device_bulk_close,
-	ehci_device_clear_toggle,
-	ehci_device_bulk_done,
+	.transfer =	ehci_device_bulk_transfer,
+	.start =	ehci_device_bulk_start,
+	.abort =	ehci_device_bulk_abort,
+	.close =	ehci_device_bulk_close,
+	.cleartoggle =	ehci_device_clear_toggle,
+	.done =		ehci_device_bulk_done,
 };
 
 Static const struct usbd_pipe_methods ehci_device_isoc_methods = {
-	ehci_device_isoc_transfer,
-	ehci_device_isoc_start,
-	ehci_device_isoc_abort,
-	ehci_device_isoc_close,
-	ehci_noop,
-	ehci_device_isoc_done,
+	.transfer =	ehci_device_isoc_transfer,
+	.start =	ehci_device_isoc_start,
+	.abort =	ehci_device_isoc_abort,
+	.close =	ehci_device_isoc_close,
+	.cleartoggle =	ehci_noop,
+	.done =		ehci_device_isoc_done,
 };
 
 static const uint8_t revbits[EHCI_MAX_POLLRATE] = {

Index: src/sys/dev/usb/if_aue.c
diff -u src/sys/dev/usb/if_aue.c:1.124 src/sys/dev/usb/if_aue.c:1.125
--- src/sys/dev/usb/if_aue.c:1.124	Thu Feb  2 19:43:07 2012
+++ src/sys/dev/usb/if_aue.c	Tue Mar  6 03:35:29 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_aue.c,v 1.124 2012/02/02 19:43:07 tls Exp $	*/
+/*	$NetBSD: if_aue.c,v 1.125 2012/03/06 03:35:29 mrg Exp $	*/
 /*
  * Copyright (c) 1997, 1998, 1999, 2000
  *	Bill Paul <wp...@ee.columbia.edu>.  All rights reserved.
@@ -77,7 +77,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_aue.c,v 1.124 2012/02/02 19:43:07 tls Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_aue.c,v 1.125 2012/03/06 03:35:29 mrg Exp $");
 
 #include "opt_inet.h"
 
@@ -424,7 +424,7 @@ aue_unlock_mii(struct aue_softc *sc)
 {
 	mutex_exit(&sc->aue_mii_lock);
 	if (--sc->aue_refcnt < 0)
-		usb_detach_wakeup((sc->aue_dev));
+		usb_detach_wakeupold((sc->aue_dev));
 }
 
 Static int
@@ -923,7 +923,7 @@ aue_detach(device_t self, int flags)
 
 	if (--sc->aue_refcnt >= 0) {
 		/* Wait for processes to go away. */
-		usb_detach_wait((sc->aue_dev));
+		usb_detach_waitold((sc->aue_dev));
 	}
 	splx(s);
 

Index: src/sys/dev/usb/if_axe.c
diff -u src/sys/dev/usb/if_axe.c:1.52 src/sys/dev/usb/if_axe.c:1.53
--- src/sys/dev/usb/if_axe.c:1.52	Fri Feb 24 06:48:23 2012
+++ src/sys/dev/usb/if_axe.c	Tue Mar  6 03:35:29 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_axe.c,v 1.52 2012/02/24 06:48:23 mrg Exp $	*/
+/*	$NetBSD: if_axe.c,v 1.53 2012/03/06 03:35:29 mrg Exp $	*/
 /*	$OpenBSD: if_axe.c,v 1.96 2010/01/09 05:33:08 jsg Exp $ */
 
 /*
@@ -89,7 +89,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_axe.c,v 1.52 2012/02/24 06:48:23 mrg Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_axe.c,v 1.53 2012/03/06 03:35:29 mrg Exp $");
 
 #if defined(_KERNEL_OPT)
 #include "opt_inet.h"
@@ -221,7 +221,7 @@ axe_unlock_mii(struct axe_softc *sc)
 
 	mutex_exit(&sc->axe_mii_lock);
 	if (--sc->axe_refcnt < 0)
-		usb_detach_wakeup((sc->axe_dev));
+		usb_detach_wakeupold((sc->axe_dev));
 }
 
 static int
@@ -778,7 +778,7 @@ axe_detach(device_t self, int flags)
 
 	if (--sc->axe_refcnt >= 0) {
 		/* Wait for processes to go away. */
-		usb_detach_wait((sc->axe_dev));
+		usb_detach_waitold((sc->axe_dev));
 	}
 	splx(s);
 

Index: src/sys/dev/usb/if_udav.c
diff -u src/sys/dev/usb/if_udav.c:1.35 src/sys/dev/usb/if_udav.c:1.36
--- src/sys/dev/usb/if_udav.c:1.35	Sun Feb 19 14:56:16 2012
+++ src/sys/dev/usb/if_udav.c	Tue Mar  6 03:35:29 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_udav.c,v 1.35 2012/02/19 14:56:16 mbalmer Exp $	*/
+/*	$NetBSD: if_udav.c,v 1.36 2012/03/06 03:35:29 mrg Exp $	*/
 /*	$nabe: if_udav.c,v 1.3 2003/08/21 16:57:19 nabe Exp $	*/
 /*
  * Copyright (c) 2003
@@ -44,7 +44,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_udav.c,v 1.35 2012/02/19 14:56:16 mbalmer Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_udav.c,v 1.36 2012/03/06 03:35:29 mrg Exp $");
 
 #include "opt_inet.h"
 
@@ -345,7 +345,7 @@ udav_detach(device_t self, int flags)
 
 	if (--sc->sc_refcnt >= 0) {
 		/* Wait for processes to go away */
-		usb_detach_wait(sc->sc_dev);
+		usb_detach_waitold(sc->sc_dev);
 	}
 	if (ifp->if_flags & IFF_RUNNING)
 		udav_stop(GET_IFP(sc), 1);
@@ -405,7 +405,7 @@ udav_mem_read(struct udav_softc *sc, int
 	sc->sc_refcnt++;
 	err = usbd_do_request(sc->sc_udev, &req, buf);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 	if (err) {
 		DPRINTF(("%s: %s: read failed. off=%04x, err=%d\n",
 			 device_xname(sc->sc_dev), __func__, offset, err));
@@ -442,7 +442,7 @@ udav_mem_write(struct udav_softc *sc, in
 	sc->sc_refcnt++;
 	err = usbd_do_request(sc->sc_udev, &req, buf);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 	if (err) {
 		DPRINTF(("%s: %s: write failed. off=%04x, err=%d\n",
 			 device_xname(sc->sc_dev), __func__, offset, err));
@@ -478,7 +478,7 @@ udav_mem_write1(struct udav_softc *sc, i
 	sc->sc_refcnt++;
 	err = usbd_do_request(sc->sc_udev, &req, NULL);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 	if (err) {
 		DPRINTF(("%s: %s: write failed. off=%04x, err=%d\n",
 			 device_xname(sc->sc_dev), __func__, offset, err));
@@ -516,7 +516,7 @@ udav_csr_read(struct udav_softc *sc, int
 	sc->sc_refcnt++;
 	err = usbd_do_request(sc->sc_udev, &req, buf);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 	if (err) {
 		DPRINTF(("%s: %s: read failed. off=%04x, err=%d\n",
 			 device_xname(sc->sc_dev), __func__, offset, err));
@@ -553,7 +553,7 @@ udav_csr_write(struct udav_softc *sc, in
 	sc->sc_refcnt++;
 	err = usbd_do_request(sc->sc_udev, &req, buf);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 	if (err) {
 		DPRINTF(("%s: %s: write failed. off=%04x, err=%d\n",
 			 device_xname(sc->sc_dev), __func__, offset, err));
@@ -606,7 +606,7 @@ udav_csr_write1(struct udav_softc *sc, i
 	sc->sc_refcnt++;
 	err = usbd_do_request(sc->sc_udev, &req, NULL);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 	if (err) {
 		DPRINTF(("%s: %s: write failed. off=%04x, err=%d\n",
 			 device_xname(sc->sc_dev), __func__, offset, err));
@@ -867,7 +867,7 @@ udav_openpipes(struct udav_softc *sc)
 
  done:
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	return (error);
 }
@@ -1040,7 +1040,7 @@ udav_send(struct udav_softc *sc, struct 
 	sc->sc_refcnt++;
 	err = usbd_transfer(c->udav_xfer);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 	if (err != USBD_IN_PROGRESS) {
 		printf("%s: udav_send error=%s\n", device_xname(sc->sc_dev),
 		       usbd_errstr(err));
@@ -1089,7 +1089,7 @@ udav_txeof(usbd_xfer_handle xfer, usbd_p
 			sc->sc_refcnt++;
 			usbd_clear_endpoint_stall_async(sc->sc_pipe_tx);
 			if (--sc->sc_refcnt < 0)
-				usb_detach_wakeup(sc->sc_dev);
+				usb_detach_wakeupold(sc->sc_dev);
 		}
 		splx(s);
 		return;
@@ -1136,7 +1136,7 @@ udav_rxeof(usbd_xfer_handle xfer, usbd_p
 			sc->sc_refcnt++;
 			usbd_clear_endpoint_stall_async(sc->sc_pipe_rx);
 			if (--sc->sc_refcnt < 0)
-				usb_detach_wakeup(sc->sc_dev);
+				usb_detach_wakeupold(sc->sc_dev);
 		}
 		goto done;
 	}
@@ -1197,7 +1197,7 @@ udav_rxeof(usbd_xfer_handle xfer, usbd_p
 	sc->sc_refcnt++;
 	usbd_transfer(xfer);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	DPRINTF(("%s: %s: start rx\n", device_xname(sc->sc_dev), __func__));
 }
@@ -1463,7 +1463,7 @@ udav_unlock_mii(struct udav_softc *sc)
 
 	mutex_exit(&sc->sc_mii_lock);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 }
 
 Static int

Index: src/sys/dev/usb/if_url.c
diff -u src/sys/dev/usb/if_url.c:1.41 src/sys/dev/usb/if_url.c:1.42
--- src/sys/dev/usb/if_url.c:1.41	Thu Feb  2 19:43:07 2012
+++ src/sys/dev/usb/if_url.c	Tue Mar  6 03:35:29 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_url.c,v 1.41 2012/02/02 19:43:07 tls Exp $	*/
+/*	$NetBSD: if_url.c,v 1.42 2012/03/06 03:35:29 mrg Exp $	*/
 /*
  * Copyright (c) 2001, 2002
  *     Shingo WATANABE <n...@nabechan.org>.  All rights reserved.
@@ -43,7 +43,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_url.c,v 1.41 2012/02/02 19:43:07 tls Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_url.c,v 1.42 2012/03/06 03:35:29 mrg Exp $");
 
 #include "opt_inet.h"
 
@@ -350,7 +350,7 @@ url_detach(device_t self, int flags)
 
 	if (--sc->sc_refcnt >= 0) {
 		/* Wait for processes to go away */
-		usb_detach_wait(sc->sc_dev);
+		usb_detach_waitold(sc->sc_dev);
 	}
 
 	if (ifp->if_flags & IFF_RUNNING)
@@ -410,7 +410,7 @@ url_mem(struct url_softc *sc, int cmd, i
 	sc->sc_refcnt++;
 	err = usbd_do_request(sc->sc_udev, &req, buf);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 	if (err) {
 		DPRINTF(("%s: url_mem(): %s failed. off=%04x, err=%d\n",
 			 device_xname(sc->sc_dev),
@@ -751,7 +751,7 @@ url_openpipes(struct url_softc *sc)
 
  done:
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	return (error);
 }
@@ -918,7 +918,7 @@ url_send(struct url_softc *sc, struct mb
 	sc->sc_refcnt++;
 	err = usbd_transfer(c->url_xfer);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 	if (err != USBD_IN_PROGRESS) {
 		printf("%s: url_send error=%s\n", device_xname(sc->sc_dev),
 		       usbd_errstr(err));
@@ -967,7 +967,7 @@ url_txeof(usbd_xfer_handle xfer, usbd_pr
 			sc->sc_refcnt++;
 			usbd_clear_endpoint_stall_async(sc->sc_pipe_tx);
 			if (--sc->sc_refcnt < 0)
-				usb_detach_wakeup(sc->sc_dev);
+				usb_detach_wakeupold(sc->sc_dev);
 		}
 		splx(s);
 		return;
@@ -1014,7 +1014,7 @@ url_rxeof(usbd_xfer_handle xfer, usbd_pr
 			sc->sc_refcnt++;
 			usbd_clear_endpoint_stall_async(sc->sc_pipe_rx);
 			if (--sc->sc_refcnt < 0)
-				usb_detach_wakeup(sc->sc_dev);
+				usb_detach_wakeupold(sc->sc_dev);
 		}
 		goto done;
 	}
@@ -1074,7 +1074,7 @@ url_rxeof(usbd_xfer_handle xfer, usbd_pr
 	sc->sc_refcnt++;
 	usbd_transfer(xfer);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	DPRINTF(("%s: %s: start rx\n", device_xname(sc->sc_dev), __func__));
 }
@@ -1339,7 +1339,7 @@ url_unlock_mii(struct url_softc *sc)
 
 	rw_exit(&sc->sc_mii_rwlock);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 }
 
 Static int
Index: src/sys/dev/usb/umass_scsipi.c
diff -u src/sys/dev/usb/umass_scsipi.c:1.41 src/sys/dev/usb/umass_scsipi.c:1.42
--- src/sys/dev/usb/umass_scsipi.c:1.41	Sun Mar  4 00:21:20 2012
+++ src/sys/dev/usb/umass_scsipi.c	Tue Mar  6 03:35:30 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: umass_scsipi.c,v 1.41 2012/03/04 00:21:20 mrg Exp $	*/
+/*	$NetBSD: umass_scsipi.c,v 1.42 2012/03/06 03:35:30 mrg Exp $	*/
 
 /*
  * Copyright (c) 2001, 2003 The NetBSD Foundation, Inc.
@@ -31,7 +31,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: umass_scsipi.c,v 1.41 2012/03/04 00:21:20 mrg Exp $");
+__KERNEL_RCSID(0, "$NetBSD: umass_scsipi.c,v 1.42 2012/03/06 03:35:30 mrg Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_umass.h"
@@ -139,7 +139,7 @@ umass_scsi_attach(struct umass_softc *sc
 	    config_found_ia(sc->sc_dev, "scsi", &scbus->sc_channel,
 		scsiprint);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	return (0);
 }
@@ -167,7 +167,7 @@ umass_atapi_attach(struct umass_softc *s
 	    config_found_ia(sc->sc_dev, "atapi", &scbus->sc_channel,
 		atapiprint);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	return (0);
 }
Index: src/sys/dev/usb/usbdi_util.h
diff -u src/sys/dev/usb/usbdi_util.h:1.41 src/sys/dev/usb/usbdi_util.h:1.42
--- src/sys/dev/usb/usbdi_util.h:1.41	Thu Nov 12 08:32:57 2009
+++ src/sys/dev/usb/usbdi_util.h	Tue Mar  6 03:35:30 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: usbdi_util.h,v 1.41 2009/11/12 08:32:57 uebayasi Exp $	*/
+/*	$NetBSD: usbdi_util.h,v 1.42 2012/03/06 03:35:30 mrg Exp $	*/
 
 /*
  * Copyright (c) 1998, 2004 The NetBSD Foundation, Inc.
@@ -83,8 +83,8 @@ usbd_status usbd_intr_transfer(usbd_xfer
  			       u_int16_t, u_int32_t, void *,
  			       u_int32_t *, const char *);
 
-void usb_detach_wait(device_t);
-void usb_detach_wakeup(device_t);
+void usb_detach_waitold(device_t);
+void usb_detach_wakeupold(device_t);
 
 
 typedef struct {

Index: src/sys/dev/usb/ohci.c
diff -u src/sys/dev/usb/ohci.c:1.220 src/sys/dev/usb/ohci.c:1.221
--- src/sys/dev/usb/ohci.c:1.220	Tue Mar  6 02:49:03 2012
+++ src/sys/dev/usb/ohci.c	Tue Mar  6 03:35:29 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: ohci.c,v 1.220 2012/03/06 02:49:03 mrg Exp $	*/
+/*	$NetBSD: ohci.c,v 1.221 2012/03/06 03:35:29 mrg Exp $	*/
 /*	$FreeBSD: src/sys/dev/usb/ohci.c,v 1.22 1999/11/17 22:33:40 n_hibma Exp $	*/
 
 /*
@@ -41,7 +41,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ohci.c,v 1.220 2012/03/06 02:49:03 mrg Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ohci.c,v 1.221 2012/03/06 03:35:29 mrg Exp $");
 
 #include "opt_usb.h"
 
@@ -267,67 +267,67 @@ struct ohci_pipe {
 #define OHCI_INTR_ENDPT 1
 
 Static const struct usbd_bus_methods ohci_bus_methods = {
-	ohci_open,
-	ohci_softintr,
-	ohci_poll,
-	ohci_allocm,
-	ohci_freem,
-	ohci_allocx,
-	ohci_freex,
+	.open_pipe =	ohci_open,
+	.soft_intr =	ohci_softintr,
+	.do_poll =	ohci_poll,
+	.allocm =	ohci_allocm,
+	.freem =	ohci_freem,
+	.allocx =	ohci_allocx,
+	.freex =	ohci_freex,
 };
 
 Static const struct usbd_pipe_methods ohci_root_ctrl_methods = {
-	ohci_root_ctrl_transfer,
-	ohci_root_ctrl_start,
-	ohci_root_ctrl_abort,
-	ohci_root_ctrl_close,
-	ohci_noop,
-	ohci_root_ctrl_done,
+	.transfer =	ohci_root_ctrl_transfer,
+	.start =	ohci_root_ctrl_start,
+	.abort =	ohci_root_ctrl_abort,
+	.close =	ohci_root_ctrl_close,
+	.cleartoggle =	ohci_noop,
+	.done =		ohci_root_ctrl_done,
 };
 
 Static const struct usbd_pipe_methods ohci_root_intr_methods = {
-	ohci_root_intr_transfer,
-	ohci_root_intr_start,
-	ohci_root_intr_abort,
-	ohci_root_intr_close,
-	ohci_noop,
-	ohci_root_intr_done,
+	.transfer =	ohci_root_intr_transfer,
+	.start =	ohci_root_intr_start,
+	.abort =	ohci_root_intr_abort,
+	.close =	ohci_root_intr_close,
+	.cleartoggle =	ohci_noop,
+	.done =		ohci_root_intr_done,
 };
 
 Static const struct usbd_pipe_methods ohci_device_ctrl_methods = {
-	ohci_device_ctrl_transfer,
-	ohci_device_ctrl_start,
-	ohci_device_ctrl_abort,
-	ohci_device_ctrl_close,
-	ohci_noop,
-	ohci_device_ctrl_done,
+	.transfer =	ohci_device_ctrl_transfer,
+	.start =	ohci_device_ctrl_start,
+	.abort =	ohci_device_ctrl_abort,
+	.close =	ohci_device_ctrl_close,
+	.cleartoggle =	ohci_noop,
+	.done =		ohci_device_ctrl_done,
 };
 
 Static const struct usbd_pipe_methods ohci_device_intr_methods = {
-	ohci_device_intr_transfer,
-	ohci_device_intr_start,
-	ohci_device_intr_abort,
-	ohci_device_intr_close,
-	ohci_device_clear_toggle,
-	ohci_device_intr_done,
+	.transfer =	ohci_device_intr_transfer,
+	.start =	ohci_device_intr_start,
+	.abort =	ohci_device_intr_abort,
+	.close =	ohci_device_intr_close,
+	.cleartoggle =	ohci_device_clear_toggle,
+	.done =		ohci_device_intr_done,
 };
 
 Static const struct usbd_pipe_methods ohci_device_bulk_methods = {
-	ohci_device_bulk_transfer,
-	ohci_device_bulk_start,
-	ohci_device_bulk_abort,
-	ohci_device_bulk_close,
-	ohci_device_clear_toggle,
-	ohci_device_bulk_done,
+	.transfer =	ohci_device_bulk_transfer,
+	.start =	ohci_device_bulk_start,
+	.abort =	ohci_device_bulk_abort,
+	.close =	ohci_device_bulk_close,
+	.cleartoggle =	ohci_device_clear_toggle,
+	.done =		ohci_device_bulk_done,
 };
 
 Static const struct usbd_pipe_methods ohci_device_isoc_methods = {
-	ohci_device_isoc_transfer,
-	ohci_device_isoc_start,
-	ohci_device_isoc_abort,
-	ohci_device_isoc_close,
-	ohci_noop,
-	ohci_device_isoc_done,
+	.transfer =	ohci_device_isoc_transfer,
+	.start =	ohci_device_isoc_start,
+	.abort =	ohci_device_isoc_abort,
+	.close =	ohci_device_isoc_close,
+	.cleartoggle =	ohci_noop,
+	.done =		ohci_device_isoc_done,
 };
 
 int

Index: src/sys/dev/usb/stuirda.c
diff -u src/sys/dev/usb/stuirda.c:1.13 src/sys/dev/usb/stuirda.c:1.14
--- src/sys/dev/usb/stuirda.c:1.13	Fri Dec 23 00:51:44 2011
+++ src/sys/dev/usb/stuirda.c	Tue Mar  6 03:35:29 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: stuirda.c,v 1.13 2011/12/23 00:51:44 jakllsch Exp $	*/
+/*	$NetBSD: stuirda.c,v 1.14 2012/03/06 03:35:29 mrg Exp $	*/
 
 /*
  * Copyright (c) 2001,2007 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: stuirda.c,v 1.13 2011/12/23 00:51:44 jakllsch Exp $");
+__KERNEL_RCSID(0, "$NetBSD: stuirda.c,v 1.14 2012/03/06 03:35:29 mrg Exp $");
 
 #include <sys/param.h>
 
@@ -329,7 +329,7 @@ stuirda_write(void *h, struct uio *uio, 
 
 	mutex_exit(&sc->sc_wr_buf_lk);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	DPRINTFN(1,("%s: sc=%p done\n", __func__, sc));
 	return (error);

Index: src/sys/dev/usb/ubt.c
diff -u src/sys/dev/usb/ubt.c:1.44 src/sys/dev/usb/ubt.c:1.45
--- src/sys/dev/usb/ubt.c:1.44	Mon Jan 23 08:30:24 2012
+++ src/sys/dev/usb/ubt.c	Tue Mar  6 03:35:29 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: ubt.c,v 1.44 2012/01/23 08:30:24 plunky Exp $	*/
+/*	$NetBSD: ubt.c,v 1.45 2012/03/06 03:35:29 mrg Exp $	*/
 
 /*-
  * Copyright (c) 2006 Itronix Inc.
@@ -67,7 +67,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ubt.c,v 1.44 2012/01/23 08:30:24 plunky Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ubt.c,v 1.45 2012/03/06 03:35:29 mrg Exp $");
 
 #include <sys/param.h>
 #include <sys/device.h>
@@ -575,7 +575,7 @@ ubt_detach(device_t self, int flags)
 	/* wait for all processes to finish */
 	s = splusb();
 	if (sc->sc_refcnt-- > 0)
-		usb_detach_wait(sc->sc_dev);
+		usb_detach_waitold(sc->sc_dev);
 
 	splx(s);
 
@@ -1089,7 +1089,7 @@ ubt_xmit_cmd_complete(usbd_xfer_handle x
 
 	if (--sc->sc_refcnt < 0) {
 		DPRINTF("sc_refcnt=%d\n", sc->sc_refcnt);
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 		return;
 	}
 
@@ -1200,7 +1200,7 @@ ubt_xmit_acl_complete(usbd_xfer_handle x
 	sc->sc_aclwr_busy = 0;
 
 	if (--sc->sc_refcnt < 0) {
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 		return;
 	}
 
@@ -1365,7 +1365,7 @@ ubt_xmit_sco_complete(usbd_xfer_handle x
 	}
 
 	if (--sc->sc_refcnt < 0) {
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 		return;
 	}
 
@@ -1500,7 +1500,7 @@ ubt_recv_acl_complete(usbd_xfer_handle x
 
 	if (--sc->sc_refcnt < 0) {
 		DPRINTF("refcnt = %d\n", sc->sc_refcnt);
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 		return;
 	}
 
@@ -1591,7 +1591,7 @@ ubt_recv_sco_complete(usbd_xfer_handle x
 
 	if (--sc->sc_refcnt < 0) {
 		DPRINTF("refcnt=%d\n", sc->sc_refcnt);
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 		return;
 	}
 

Index: src/sys/dev/usb/ucom.c
diff -u src/sys/dev/usb/ucom.c:1.98 src/sys/dev/usb/ucom.c:1.99
--- src/sys/dev/usb/ucom.c:1.98	Fri Feb 24 06:48:25 2012
+++ src/sys/dev/usb/ucom.c	Tue Mar  6 03:35:29 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: ucom.c,v 1.98 2012/02/24 06:48:25 mrg Exp $	*/
+/*	$NetBSD: ucom.c,v 1.99 2012/03/06 03:35:29 mrg Exp $	*/
 
 /*
  * Copyright (c) 1998, 2000 The NetBSD Foundation, Inc.
@@ -34,7 +34,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ucom.c,v 1.98 2012/02/24 06:48:25 mrg Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ucom.c,v 1.99 2012/03/06 03:35:29 mrg Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -277,7 +277,7 @@ ucom_detach(device_t self, int flags)
 			mutex_spin_exit(&tty_lock);
 		}
 		/* Wait for processes to go away. */
-		usb_detach_wait(sc->sc_dev);
+		usb_detach_waitold(sc->sc_dev);
 	}
 
 	softint_disestablish(sc->sc_si);
@@ -606,7 +606,7 @@ ucomclose(dev_t dev, int flag, int mode,
 		sc->sc_methods->ucom_close(sc->sc_parent, sc->sc_portno);
 
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 	splx(s);
 
 	return (0);
@@ -625,7 +625,7 @@ ucomread(dev_t dev, struct uio *uio, int
 	sc->sc_refcnt++;
 	error = ((*tp->t_linesw->l_read)(tp, uio, flag));
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 	return (error);
 }
 
@@ -642,7 +642,7 @@ ucomwrite(dev_t dev, struct uio *uio, in
 	sc->sc_refcnt++;
 	error = ((*tp->t_linesw->l_write)(tp, uio, flag));
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 	return (error);
 }
 
@@ -662,7 +662,7 @@ ucompoll(dev_t dev, int events, struct l
 	sc->sc_refcnt++;
 	revents = ((*tp->t_linesw->l_poll)(tp, events, l));
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 	return (revents);
 }
 
@@ -684,7 +684,7 @@ ucomioctl(dev_t dev, u_long cmd, void *d
 	sc->sc_refcnt++;
 	error = ucom_do_ioctl(sc, cmd, data, flag, l);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 	return (error);
 }
 

Index: src/sys/dev/usb/ucycom.c
diff -u src/sys/dev/usb/ucycom.c:1.33 src/sys/dev/usb/ucycom.c:1.34
--- src/sys/dev/usb/ucycom.c:1.33	Sun Apr 24 16:27:01 2011
+++ src/sys/dev/usb/ucycom.c	Tue Mar  6 03:35:29 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: ucycom.c,v 1.33 2011/04/24 16:27:01 rmind Exp $	*/
+/*	$NetBSD: ucycom.c,v 1.34 2012/03/06 03:35:29 mrg Exp $	*/
 
 /*
  * Copyright (c) 2005 The NetBSD Foundation, Inc.
@@ -38,7 +38,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ucycom.c,v 1.33 2011/04/24 16:27:01 rmind Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ucycom.c,v 1.34 2012/03/06 03:35:29 mrg Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -245,7 +245,7 @@ ucycom_detach(device_t self, int flags)
 		mutex_spin_exit(&tty_lock);
 	}
 	/* Wait for processes to go away. */
-	usb_detach_wait(sc->sc_hdev.sc_dev);
+	usb_detach_waitold(sc->sc_hdev.sc_dev);
 	splx(s);
 
 	/* locate the major number */

Index: src/sys/dev/usb/ugen.c
diff -u src/sys/dev/usb/ugen.c:1.117 src/sys/dev/usb/ugen.c:1.118
--- src/sys/dev/usb/ugen.c:1.117	Fri Feb 24 06:48:25 2012
+++ src/sys/dev/usb/ugen.c	Tue Mar  6 03:35:29 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: ugen.c,v 1.117 2012/02/24 06:48:25 mrg Exp $	*/
+/*	$NetBSD: ugen.c,v 1.118 2012/03/06 03:35:29 mrg Exp $	*/
 
 /*
  * Copyright (c) 1998, 2004 The NetBSD Foundation, Inc.
@@ -37,7 +37,7 @@
 
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ugen.c,v 1.117 2012/02/24 06:48:25 mrg Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ugen.c,v 1.118 2012/03/06 03:35:29 mrg Exp $");
 
 #include "opt_compat_netbsd.h"
 
@@ -756,7 +756,7 @@ ugenread(dev_t dev, struct uio *uio, int
 	sc->sc_refcnt++;
 	error = ugen_do_read(sc, endpt, uio, flag);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 	return (error);
 }
 
@@ -941,7 +941,7 @@ ugenwrite(dev_t dev, struct uio *uio, in
 	sc->sc_refcnt++;
 	error = ugen_do_write(sc, endpt, uio, flag);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 	return (error);
 }
 
@@ -987,7 +987,7 @@ ugen_detach(device_t self, int flags)
 		for (i = 0; i < USB_MAX_ENDPOINTS; i++)
 			wakeup(&sc->sc_endpoints[i][IN]);
 		/* Wait for processes to go away. */
-		usb_detach_wait(sc->sc_dev);
+		usb_detach_waitold(sc->sc_dev);
 	}
 	splx(s);
 
@@ -1782,7 +1782,7 @@ ugenioctl(dev_t dev, u_long cmd, void *a
 	sc->sc_refcnt++;
 	error = ugen_do_ioctl(sc, endpt, cmd, addr, flag, l);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 	return (error);
 }
 

Index: src/sys/dev/usb/uhci.c
diff -u src/sys/dev/usb/uhci.c:1.244 src/sys/dev/usb/uhci.c:1.245
--- src/sys/dev/usb/uhci.c:1.244	Tue Mar  6 02:49:03 2012
+++ src/sys/dev/usb/uhci.c	Tue Mar  6 03:35:29 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: uhci.c,v 1.244 2012/03/06 02:49:03 mrg Exp $	*/
+/*	$NetBSD: uhci.c,v 1.245 2012/03/06 03:35:29 mrg Exp $	*/
 /*	$FreeBSD: src/sys/dev/usb/uhci.c,v 1.33 1999/11/17 22:33:41 n_hibma Exp $	*/
 
 /*
@@ -42,7 +42,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uhci.c,v 1.244 2012/03/06 02:49:03 mrg Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uhci.c,v 1.245 2012/03/06 03:35:29 mrg Exp $");
 
 #include "opt_usb.h"
 
@@ -281,67 +281,67 @@ UREAD4(uhci_softc_t *sc, bus_size_t r)
 #define UHCI_INTR_ENDPT 1
 
 const struct usbd_bus_methods uhci_bus_methods = {
-	uhci_open,
-	uhci_softintr,
-	uhci_poll,
-	uhci_allocm,
-	uhci_freem,
-	uhci_allocx,
-	uhci_freex,
+	.open_pipe =	uhci_open,
+	.soft_intr =	uhci_softintr,
+	.do_poll =	uhci_poll,
+	.allocm =	uhci_allocm,
+	.freem =	uhci_freem,
+	.allocx =	uhci_allocx,
+	.freex =	uhci_freex,
 };
 
 const struct usbd_pipe_methods uhci_root_ctrl_methods = {
-	uhci_root_ctrl_transfer,
-	uhci_root_ctrl_start,
-	uhci_root_ctrl_abort,
-	uhci_root_ctrl_close,
-	uhci_noop,
-	uhci_root_ctrl_done,
+	.transfer =	uhci_root_ctrl_transfer,
+	.start =	uhci_root_ctrl_start,
+	.abort =	uhci_root_ctrl_abort,
+	.close =	uhci_root_ctrl_close,
+	.cleartoggle =	uhci_noop,
+	.done =		uhci_root_ctrl_done,
 };
 
 const struct usbd_pipe_methods uhci_root_intr_methods = {
-	uhci_root_intr_transfer,
-	uhci_root_intr_start,
-	uhci_root_intr_abort,
-	uhci_root_intr_close,
-	uhci_noop,
-	uhci_root_intr_done,
+	.transfer =	uhci_root_intr_transfer,
+	.start =	uhci_root_intr_start,
+	.abort =	uhci_root_intr_abort,
+	.close =	uhci_root_intr_close,
+	.cleartoggle =	uhci_noop,
+	.done =		uhci_root_intr_done,
 };
 
 const struct usbd_pipe_methods uhci_device_ctrl_methods = {
-	uhci_device_ctrl_transfer,
-	uhci_device_ctrl_start,
-	uhci_device_ctrl_abort,
-	uhci_device_ctrl_close,
-	uhci_noop,
-	uhci_device_ctrl_done,
+	.transfer =	uhci_device_ctrl_transfer,
+	.start =	uhci_device_ctrl_start,
+	.abort =	uhci_device_ctrl_abort,
+	.close =	uhci_device_ctrl_close,
+	.cleartoggle =	uhci_noop,
+	.done =		uhci_device_ctrl_done,
 };
 
 const struct usbd_pipe_methods uhci_device_intr_methods = {
-	uhci_device_intr_transfer,
-	uhci_device_intr_start,
-	uhci_device_intr_abort,
-	uhci_device_intr_close,
-	uhci_device_clear_toggle,
-	uhci_device_intr_done,
+	.transfer =	uhci_device_intr_transfer,
+	.start =	uhci_device_intr_start,
+	.abort =	uhci_device_intr_abort,
+	.close =	uhci_device_intr_close,
+	.cleartoggle =	uhci_device_clear_toggle,
+	.done =		uhci_device_intr_done,
 };
 
 const struct usbd_pipe_methods uhci_device_bulk_methods = {
-	uhci_device_bulk_transfer,
-	uhci_device_bulk_start,
-	uhci_device_bulk_abort,
-	uhci_device_bulk_close,
-	uhci_device_clear_toggle,
-	uhci_device_bulk_done,
+	.transfer =	uhci_device_bulk_transfer,
+	.start =	uhci_device_bulk_start,
+	.abort =	uhci_device_bulk_abort,
+	.close =	uhci_device_bulk_close,
+	.cleartoggle =	uhci_device_clear_toggle,
+	.done =		uhci_device_bulk_done,
 };
 
 const struct usbd_pipe_methods uhci_device_isoc_methods = {
-	uhci_device_isoc_transfer,
-	uhci_device_isoc_start,
-	uhci_device_isoc_abort,
-	uhci_device_isoc_close,
-	uhci_noop,
-	uhci_device_isoc_done,
+	.transfer =	uhci_device_isoc_transfer,
+	.start =	uhci_device_isoc_start,
+	.abort =	uhci_device_isoc_abort,
+	.close =	uhci_device_isoc_close,
+	.cleartoggle =	uhci_noop,
+	.done =		uhci_device_isoc_done,
 };
 
 #define uhci_add_intr_info(sc, ii) \

Index: src/sys/dev/usb/uhid.c
diff -u src/sys/dev/usb/uhid.c:1.85 src/sys/dev/usb/uhid.c:1.86
--- src/sys/dev/usb/uhid.c:1.85	Fri Feb 24 06:48:25 2012
+++ src/sys/dev/usb/uhid.c	Tue Mar  6 03:35:29 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: uhid.c,v 1.85 2012/02/24 06:48:25 mrg Exp $	*/
+/*	$NetBSD: uhid.c,v 1.86 2012/03/06 03:35:29 mrg Exp $	*/
 
 /*
  * Copyright (c) 1998, 2004, 2008 The NetBSD Foundation, Inc.
@@ -35,7 +35,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uhid.c,v 1.85 2012/02/24 06:48:25 mrg Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uhid.c,v 1.86 2012/03/06 03:35:29 mrg Exp $");
 
 #include "opt_compat_netbsd.h"
 
@@ -205,7 +205,7 @@ uhid_detach(device_t self, int flags)
 			/* Wake everyone */
 			wakeup(&sc->sc_q);
 			/* Wait for processes to go away. */
-			usb_detach_wait(sc->sc_hdev.sc_dev);
+			usb_detach_waitold(sc->sc_hdev.sc_dev);
 		}
 		splx(s);
 	}
@@ -393,7 +393,7 @@ uhidread(dev_t dev, struct uio *uio, int
 	sc->sc_refcnt++;
 	error = uhid_do_read(sc, uio, flag);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_hdev.sc_dev);
+		usb_detach_wakeupold(sc->sc_hdev.sc_dev);
 	return (error);
 }
 
@@ -435,7 +435,7 @@ uhidwrite(dev_t dev, struct uio *uio, in
 	sc->sc_refcnt++;
 	error = uhid_do_write(sc, uio, flag);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_hdev.sc_dev);
+		usb_detach_wakeupold(sc->sc_hdev.sc_dev);
 	return (error);
 }
 
@@ -609,7 +609,7 @@ uhidioctl(dev_t dev, u_long cmd, void *a
 	sc->sc_refcnt++;
 	error = uhid_do_ioctl(sc, cmd, addr, flag, l);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_hdev.sc_dev);
+		usb_detach_wakeupold(sc->sc_hdev.sc_dev);
 	return (error);
 }
 

Index: src/sys/dev/usb/uhso.c
diff -u src/sys/dev/usb/uhso.c:1.7 src/sys/dev/usb/uhso.c:1.8
--- src/sys/dev/usb/uhso.c:1.7	Fri Dec 23 00:51:46 2011
+++ src/sys/dev/usb/uhso.c	Tue Mar  6 03:35:29 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: uhso.c,v 1.7 2011/12/23 00:51:46 jakllsch Exp $	*/
+/*	$NetBSD: uhso.c,v 1.8 2012/03/06 03:35:29 mrg Exp $	*/
 
 /*-
  * Copyright (c) 2009 Iain Hibbert
@@ -37,7 +37,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uhso.c,v 1.7 2011/12/23 00:51:46 jakllsch Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uhso.c,v 1.8 2012/03/06 03:35:29 mrg Exp $");
 
 #include "opt_inet.h"
 
@@ -549,13 +549,13 @@ uhso_detach(device_t self, int flags)
 	s = splusb();
 	if (sc->sc_refcnt-- > 0) {
 		DPRINTF(1, "waiting for refcnt (%d)..\n", sc->sc_refcnt);
-		usb_detach_wait(sc->sc_dev);
+		usb_detach_waitold(sc->sc_dev);
 	}
 	splx(s);
 
 	/*
 	 * XXX the tty close routine increases/decreases refcnt causing
-	 * XXX another usb_detach_wakeup() does it matter, should these
+	 * XXX another usb_detach_wakeupold() does it matter, should these
 	 * XXX be before the detach_wait? or before the abort?
 	 */
 
@@ -1253,7 +1253,7 @@ uhso_bulk_control(struct uhso_port *hp)
 	status = usbd_do_request(sc->sc_udev, &req, NULL);
 
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	if (status != USBD_NORMAL_COMPLETION) {
 		DPRINTF(0, "non-normal status %s\n", usbd_errstr(status));
@@ -1356,7 +1356,7 @@ uhso_tty_write_cb(usbd_xfer_handle xfer,
 	int s;
 
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	if (status != USBD_NORMAL_COMPLETION) {
 		DPRINTF(0, "non-normal status %s\n", usbd_errstr(status));
@@ -1390,7 +1390,7 @@ uhso_tty_read_cb(usbd_xfer_handle xfer, 
 	int s;
 
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	if (status != USBD_NORMAL_COMPLETION) {
 		DPRINTF(0, "non-normal status: %s\n", usbd_errstr(status));
@@ -1569,7 +1569,7 @@ uhso_tty_close(dev_t dev, int flag, int 
 		uhso_tty_clean(hp);
 
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	return 0;
 }
@@ -1617,7 +1617,7 @@ uhso_tty_read(dev_t dev, struct uio *uio
 	error = tp->t_linesw->l_read(tp, uio, flag);
 
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	return error;
 }
@@ -1640,7 +1640,7 @@ uhso_tty_write(dev_t dev, struct uio *ui
 	error = tp->t_linesw->l_write(tp, uio, flag);
 
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	return error;
 }
@@ -1662,7 +1662,7 @@ uhso_tty_ioctl(dev_t dev, u_long cmd, vo
 	error = uhso_tty_do_ioctl(hp, cmd, data, flag, l);
 
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	return error;
 }
@@ -1764,7 +1764,7 @@ uhso_tty_poll(dev_t dev, int events, str
         revents = tp->t_linesw->l_poll(tp, events, l);
 
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
         return revents;
 }
@@ -1976,7 +1976,7 @@ uhso_ifnet_write_cb(usbd_xfer_handle xfe
 	int s;
 
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	if (!ISSET(ifp->if_flags, IFF_RUNNING))
 		return;
@@ -2017,7 +2017,7 @@ uhso_ifnet_read_cb(usbd_xfer_handle xfer
 	uint32_t cc;
 
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	if (!ISSET(ifp->if_flags, IFF_RUNNING))
 		return;

Index: src/sys/dev/usb/uirda.c
diff -u src/sys/dev/usb/uirda.c:1.36 src/sys/dev/usb/uirda.c:1.37
--- src/sys/dev/usb/uirda.c:1.36	Fri Dec 23 00:51:47 2011
+++ src/sys/dev/usb/uirda.c	Tue Mar  6 03:35:29 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: uirda.c,v 1.36 2011/12/23 00:51:47 jakllsch Exp $	*/
+/*	$NetBSD: uirda.c,v 1.37 2012/03/06 03:35:29 mrg Exp $	*/
 
 /*
  * Copyright (c) 2001 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uirda.c,v 1.36 2011/12/23 00:51:47 jakllsch Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uirda.c,v 1.37 2012/03/06 03:35:29 mrg Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -317,7 +317,7 @@ uirda_detach(device_t self, int flags)
 	s = splusb();
 	if (--sc->sc_refcnt >= 0) {
 		/* Wait for processes to go away. */
-		usb_detach_wait(sc->sc_dev);
+		usb_detach_waitold(sc->sc_dev);
 	}
 	splx(s);
 
@@ -518,7 +518,7 @@ uirda_read(void *h, struct uio *uio, int
 
  ret:
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 	return (error);
 }
 
@@ -570,7 +570,7 @@ uirda_write(void *h, struct uio *uio, in
 
 	mutex_exit(&sc->sc_wr_buf_lk);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	DPRINTFN(1,("%s: sc=%p done\n", __func__, sc));
 	return (error);

Index: src/sys/dev/usb/ulpt.c
diff -u src/sys/dev/usb/ulpt.c:1.89 src/sys/dev/usb/ulpt.c:1.90
--- src/sys/dev/usb/ulpt.c:1.89	Fri Feb 24 06:48:26 2012
+++ src/sys/dev/usb/ulpt.c	Tue Mar  6 03:35:29 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: ulpt.c,v 1.89 2012/02/24 06:48:26 mrg Exp $	*/
+/*	$NetBSD: ulpt.c,v 1.90 2012/03/06 03:35:29 mrg Exp $	*/
 /*	$FreeBSD: src/sys/dev/usb/ulpt.c,v 1.24 1999/11/17 22:33:44 n_hibma Exp $	*/
 
 /*
@@ -36,7 +36,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ulpt.c,v 1.89 2012/02/24 06:48:26 mrg Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ulpt.c,v 1.90 2012/03/06 03:35:29 mrg Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -351,7 +351,7 @@ ulpt_detach(device_t self, int flags)
 	if (--sc->sc_refcnt >= 0) {
 		/* There is noone to wake, aborting the pipe is enough */
 		/* Wait for processes to go away. */
-		usb_detach_wait(sc->sc_dev);
+		usb_detach_waitold(sc->sc_dev);
 	}
 	splx(s);
 
@@ -531,7 +531,7 @@ ulptopen(dev_t dev, int flag, int mode, 
 
  done:
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	DPRINTFN(2, ("ulptopen: done, error=%d\n", error));
 	return (error);
@@ -647,7 +647,7 @@ ulptwrite(dev_t dev, struct uio *uio, in
 	sc->sc_refcnt++;
 	error = ulpt_do_write(sc, uio, flags);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 	return (error);
 }
 
@@ -830,7 +830,7 @@ ulptread(dev_t dev, struct uio *uio, int
 	sc->sc_refcnt++;
 	error = ulpt_do_read(sc, uio, flags);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 	return (error);
 }
 

Index: src/sys/dev/usb/umass.c
diff -u src/sys/dev/usb/umass.c:1.143 src/sys/dev/usb/umass.c:1.144
--- src/sys/dev/usb/umass.c:1.143	Sun Mar  4 00:21:20 2012
+++ src/sys/dev/usb/umass.c	Tue Mar  6 03:35:30 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: umass.c,v 1.143 2012/03/04 00:21:20 mrg Exp $	*/
+/*	$NetBSD: umass.c,v 1.144 2012/03/06 03:35:30 mrg Exp $	*/
 
 /*
  * Copyright (c) 2003 The NetBSD Foundation, Inc.
@@ -124,7 +124,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: umass.c,v 1.143 2012/03/04 00:21:20 mrg Exp $");
+__KERNEL_RCSID(0, "$NetBSD: umass.c,v 1.144 2012/03/06 03:35:30 mrg Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_umass.h"
@@ -677,7 +677,7 @@ umass_detach(device_t self, int flags)
 		aprint_normal_dev(self, "waiting for refcnt\n");
 #endif
 		/* Wait for processes to go away. */
-		usb_detach_wait(sc->sc_dev);
+		usb_detach_waitold(sc->sc_dev);
 	}
 	splx(s);
 

Index: src/sys/dev/usb/urio.c
diff -u src/sys/dev/usb/urio.c:1.38 src/sys/dev/usb/urio.c:1.39
--- src/sys/dev/usb/urio.c:1.38	Fri Feb 24 06:48:27 2012
+++ src/sys/dev/usb/urio.c	Tue Mar  6 03:35:30 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: urio.c,v 1.38 2012/02/24 06:48:27 mrg Exp $	*/
+/*	$NetBSD: urio.c,v 1.39 2012/03/06 03:35:30 mrg Exp $	*/
 
 /*
  * Copyright (c) 2000 The NetBSD Foundation, Inc.
@@ -36,7 +36,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: urio.c,v 1.38 2012/02/24 06:48:27 mrg Exp $");
+__KERNEL_RCSID(0, "$NetBSD: urio.c,v 1.39 2012/03/06 03:35:30 mrg Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -226,7 +226,7 @@ urio_detach(device_t self, int flags)
 	s = splusb();
 	if (--sc->sc_refcnt >= 0) {
 		/* Wait for processes to go away. */
-		usb_detach_wait(sc->sc_dev);
+		usb_detach_waitold(sc->sc_dev);
 	}
 	splx(s);
 
@@ -368,7 +368,7 @@ urioread(dev_t dev, struct uio *uio, int
 	usbd_free_xfer(xfer);
 
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	return (error);
 }
@@ -426,7 +426,7 @@ uriowrite(dev_t dev, struct uio *uio, in
 	usbd_free_xfer(xfer);
 
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	DPRINTFN(5, ("uriowrite: done unit=%d, error=%d\n", URIOUNIT(dev),
 		     error));
@@ -514,7 +514,7 @@ urioioctl(dev_t dev, u_long cmd, void *a
 		  &req_actlen, USBD_DEFAULT_TIMEOUT);
 
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	if (err) {
 		error = EIO;

Index: src/sys/dev/usb/usbdi_util.c
diff -u src/sys/dev/usb/usbdi_util.c:1.55 src/sys/dev/usb/usbdi_util.c:1.56
--- src/sys/dev/usb/usbdi_util.c:1.55	Wed Nov  3 22:34:24 2010
+++ src/sys/dev/usb/usbdi_util.c	Tue Mar  6 03:35:30 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: usbdi_util.c,v 1.55 2010/11/03 22:34:24 dyoung Exp $	*/
+/*	$NetBSD: usbdi_util.c,v 1.56 2012/03/06 03:35:30 mrg Exp $	*/
 
 /*
  * Copyright (c) 1998 The NetBSD Foundation, Inc.
@@ -31,7 +31,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: usbdi_util.c,v 1.55 2010/11/03 22:34:24 dyoung Exp $");
+__KERNEL_RCSID(0, "$NetBSD: usbdi_util.c,v 1.56 2012/03/06 03:35:30 mrg Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -498,19 +498,19 @@ usbd_intr_transfer(usbd_xfer_handle xfer
 }
 
 void
-usb_detach_wait(device_t dv)
+usb_detach_waitold(device_t dv)
 {
-	DPRINTF(("usb_detach_wait: waiting for %s\n", device_xname(dv)));
+	DPRINTF(("usb_detach_waitold: waiting for %s\n", device_xname(dv)));
 	if (tsleep(dv, PZERO, "usbdet", hz * 60))
-		printf("usb_detach_wait: %s didn't detach\n",
+		printf("usb_detach_waitold: %s didn't detach\n",
 		        device_xname(dv));
-	DPRINTF(("usb_detach_wait: %s done\n", device_xname(dv)));
+	DPRINTF(("usb_detach_waitold: %s done\n", device_xname(dv)));
 }
 
 void
-usb_detach_wakeup(device_t dv)
+usb_detach_wakeupold(device_t dv)
 {
-	DPRINTF(("usb_detach_wakeup: for %s\n", device_xname(dv)));
+	DPRINTF(("usb_detach_wakeupold: for %s\n", device_xname(dv)));
 	wakeup(dv);
 }
 

Index: src/sys/dev/usb/uscanner.c
diff -u src/sys/dev/usb/uscanner.c:1.71 src/sys/dev/usb/uscanner.c:1.72
--- src/sys/dev/usb/uscanner.c:1.71	Fri Feb 24 06:48:28 2012
+++ src/sys/dev/usb/uscanner.c	Tue Mar  6 03:35:30 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: uscanner.c,v 1.71 2012/02/24 06:48:28 mrg Exp $	*/
+/*	$NetBSD: uscanner.c,v 1.72 2012/03/06 03:35:30 mrg Exp $	*/
 
 /*
  * Copyright (c) 2000 The NetBSD Foundation, Inc.
@@ -32,7 +32,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uscanner.c,v 1.71 2012/02/24 06:48:28 mrg Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uscanner.c,v 1.72 2012/03/06 03:35:30 mrg Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -527,7 +527,7 @@ uscannerread(dev_t dev, struct uio *uio,
 	sc->sc_refcnt++;
 	error = uscanner_do_read(sc, uio, flag);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	return (error);
 }
@@ -577,7 +577,7 @@ uscannerwrite(dev_t dev, struct uio *uio
 	sc->sc_refcnt++;
 	error = uscanner_do_write(sc, uio, flag);
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 	return (error);
 }
 
@@ -616,7 +616,7 @@ uscanner_detach(device_t self, int flags
 	s = splusb();
 	if (--sc->sc_refcnt >= 0) {
 		/* Wait for processes to go away. */
-		usb_detach_wait(sc->sc_dev);
+		usb_detach_waitold(sc->sc_dev);
 	}
 	splx(s);
 

Index: src/sys/dev/usb/usscanner.c
diff -u src/sys/dev/usb/usscanner.c:1.34 src/sys/dev/usb/usscanner.c:1.35
--- src/sys/dev/usb/usscanner.c:1.34	Thu Feb 23 13:31:13 2012
+++ src/sys/dev/usb/usscanner.c	Tue Mar  6 03:35:30 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: usscanner.c,v 1.34 2012/02/23 13:31:13 he Exp $	*/
+/*	$NetBSD: usscanner.c,v 1.35 2012/03/06 03:35:30 mrg Exp $	*/
 
 /*
  * Copyright (c) 2001 The NetBSD Foundation, Inc.
@@ -47,7 +47,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: usscanner.c,v 1.34 2012/02/23 13:31:13 he Exp $");
+__KERNEL_RCSID(0, "$NetBSD: usscanner.c,v 1.35 2012/03/06 03:35:30 mrg Exp $");
 
 #include "scsibus.h"
 #include <sys/param.h>
@@ -372,7 +372,7 @@ usscanner_detach(device_t self, int flag
 	s = splusb();
 	if (--sc->sc_refcnt >= 0) {
 		/* Wait for processes to go away. */
-		usb_detach_wait(sc->sc_dev);
+		usb_detach_waitold(sc->sc_dev);
 	}
 	splx(s);
 

Index: src/sys/dev/usb/ustir.c
diff -u src/sys/dev/usb/ustir.c:1.31 src/sys/dev/usb/ustir.c:1.32
--- src/sys/dev/usb/ustir.c:1.31	Fri Dec 23 00:51:49 2011
+++ src/sys/dev/usb/ustir.c	Tue Mar  6 03:35:30 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: ustir.c,v 1.31 2011/12/23 00:51:49 jakllsch Exp $	*/
+/*	$NetBSD: ustir.c,v 1.32 2012/03/06 03:35:30 mrg Exp $	*/
 
 /*
  * Copyright (c) 2001 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ustir.c,v 1.31 2011/12/23 00:51:49 jakllsch Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ustir.c,v 1.32 2012/03/06 03:35:30 mrg Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -419,7 +419,7 @@ ustir_detach(device_t self, int flags)
 	s = splusb();
 	if (--sc->sc_refcnt >= 0) {
 		/* Wait for processes to go away. */
-		usb_detach_wait(sc->sc_dev);
+		usb_detach_waitold(sc->sc_dev);
 	}
 	splx(s);
 
@@ -729,7 +729,7 @@ ustir_thread(void *arg)
 	wakeup(&sc->sc_closing);
 
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	kthread_exit(0);
 }
@@ -1010,7 +1010,7 @@ ustir_close(void *h, int flag, int mode,
 	}
 
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	return 0;
 }
@@ -1081,7 +1081,7 @@ ustir_read(void *h, struct uio *uio, int
 
  ret:
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 	return error;
 }
 
@@ -1201,7 +1201,7 @@ ustir_write(void *h, struct uio *uio, in
 
  ret:
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	DPRINTFN(1,("%s: sc=%p done\n", __func__, sc));
 	return error;
@@ -1390,7 +1390,7 @@ Static int ustir_ioctl(void *h, u_long c
 	}
 
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	return error;
 }

Index: src/sys/dev/usb/utoppy.c
diff -u src/sys/dev/usb/utoppy.c:1.17 src/sys/dev/usb/utoppy.c:1.18
--- src/sys/dev/usb/utoppy.c:1.17	Fri Dec 23 00:51:49 2011
+++ src/sys/dev/usb/utoppy.c	Tue Mar  6 03:35:30 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: utoppy.c,v 1.17 2011/12/23 00:51:49 jakllsch Exp $	*/
+/*	$NetBSD: utoppy.c,v 1.18 2012/03/06 03:35:30 mrg Exp $	*/
 
 /*-
  * Copyright (c) 2006 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: utoppy.c,v 1.17 2011/12/23 00:51:49 jakllsch Exp $");
+__KERNEL_RCSID(0, "$NetBSD: utoppy.c,v 1.18 2012/03/06 03:35:30 mrg Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -343,7 +343,7 @@ utoppy_detach(device_t self, int flags)
 
 	s = splusb();
 	if (--sc->sc_refcnt >= 0)
-		usb_detach_wait(sc->sc_dev);
+		usb_detach_waitold(sc->sc_dev);
 	splx(s);
 
 	/* locate the major number */
@@ -1416,7 +1416,7 @@ utoppyopen(dev_t dev, int flag, int mode
 	    utoppy_state_string(sc->sc_state)));
 
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	return (error);
 }
@@ -1554,7 +1554,7 @@ utoppyread(dev_t dev, struct uio *uio, i
 	    device_xname(sc->sc_dev), err, utoppy_state_string(sc->sc_state)));
 
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	return (err);
 }
@@ -1657,7 +1657,7 @@ utoppywrite(dev_t dev, struct uio *uio, 
 	}
 
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	return (err);
 }
@@ -1922,7 +1922,7 @@ utoppyioctl(dev_t dev, u_long cmd, void 
 		utoppy_cancel(sc);
 
 	if (--sc->sc_refcnt < 0)
-		usb_detach_wakeup(sc->sc_dev);
+		usb_detach_wakeupold(sc->sc_dev);
 
 	return (err);
 }

Reply via email to