Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 7 Aug 2009 17:50:33 GMT
From:      Hans Petter Selasky <hselasky@FreeBSD.org>
To:        Perforce Change Reviews <perforce@FreeBSD.org>
Subject:   PERFORCE change 167092 for review
Message-ID:  <200908071750.n77HoXZY066261@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=167092

Change 167092 by hselasky@hselasky_laptop001 on 2009/08/07 17:50:13

	
	USB CORE:
	 - Leave device unconfigured instead of disabling the USB port
	   when Huawei Autoinstall disk detection triggers. This should
	   fix problems that the Huawei device is not detected after
	   Autoinstall eject is issued.

Affected files ...

.. //depot/projects/usb/src/sys/dev/usb/usb_device.c#48 edit

Differences ...

==== //depot/projects/usb/src/sys/dev/usb/usb_device.c#48 (text+ko) ====

@@ -1777,7 +1777,8 @@
 			}
 		} else if (usb_test_huawei_autoinst_p(udev, &uaa) == 0) {
 			DPRINTFN(0, "Found Huawei auto-install disk!\n");
-			err = USB_ERR_STALLED;	/* fake an error */
+			/* leave device unconfigured */
+			usb_unconfigure(udev, USB_UNCFG_FLAG_FREE_SUBDEV);
 		}
 	} else {
 		err = 0;		/* set success */
@@ -2452,7 +2453,7 @@
 void
 usbd_enum_lock(struct usb_device *udev)
 {
-	newbus_xlock();
+	newbus_slock();
 	sx_xlock(udev->default_sx + 1);
 }
 
@@ -2462,7 +2463,7 @@
 usbd_enum_unlock(struct usb_device *udev)
 {
 	sx_xunlock(udev->default_sx + 1);
-	newbus_xunlock();
+	newbus_sunlock();
 }
 
 /*



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200908071750.n77HoXZY066261>