PERFORCE change 159948 for review

Hans Petter Selasky hselasky at FreeBSD.org
Sat Mar 28 09:52:08 PDT 2009


http://perforce.freebsd.org/chv.cgi?CH=159948

Change 159948 by hselasky at hselasky_laptop001 on 2009/03/28 16:52:02

	
	USB core:
	  - add more debugging output on enumeration failures
	  - remove some redundant leftover code
	
	Requested by: Sam Leffler

Affected files ...

.. //depot/projects/usb/src/sys/dev/usb/usb_device.c#21 edit
.. //depot/projects/usb/src/sys/dev/usb/usb_request.c#10 edit

Differences ...

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

@@ -1507,10 +1507,6 @@
 	udev->speed = speed;
 	udev->flags.usb2_mode = usb2_mode;
 
-	/* speed combination should be checked by the parent HUB */
-
-	hub = udev->parent_hub;
-
 	/* search for our High Speed USB HUB, if any */
 
 	adev = udev;
@@ -1566,7 +1562,8 @@
 		 */
 		if (err) {
 			DPRINTFN(0, "set address %d failed "
-			    "(ignored)\n", udev->address);
+			    "(%s, ignored)\n", udev->address, 
+			    usb2_errstr(err));
 		}
 		/* allow device time to set new address */
 		usb2_pause_mtx(NULL, 
@@ -1602,7 +1599,8 @@
 	    USB_MAX_IPACKET, USB_MAX_IPACKET, 0, UDESC_DEVICE, 0, 0);
 	if (err) {
 		DPRINTFN(0, "getting device descriptor "
-		    "at addr %d failed!\n", udev->address);
+		    "at addr %d failed, %s!\n", udev->address,
+		    usb2_errstr(err));
 		/* XXX try to re-enumerate the device */
 		err = usb2_req_re_enumerate(udev, NULL);
 		if (err) {

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

@@ -1487,7 +1487,8 @@
 retry:
 	err = usb2_req_reset_port(parent_hub, mtx, udev->port_no);
 	if (err) {
-		DPRINTFN(0, "addr=%d, port reset failed\n", old_addr);
+		DPRINTFN(0, "addr=%d, port reset failed, %s\n", 
+		    old_addr, usb2_errstr(err));
 		goto done;
 	}
 	/*
@@ -1505,8 +1506,8 @@
 	err = usb2_req_set_address(udev, mtx, old_addr);
 	if (err) {
 		/* XXX ignore any errors! */
-		DPRINTFN(0, "addr=%d, set address failed! (ignored)\n",
-		    old_addr);
+		DPRINTFN(0, "addr=%d, set address failed! (%s, ignored)\n",
+		    old_addr, usb2_errstr(err));
 	}
 	/* restore device address */
 	udev->address = old_addr;
@@ -1519,14 +1520,16 @@
 	    USB_MAX_IPACKET, USB_MAX_IPACKET, 0, UDESC_DEVICE, 0, 0);
 	if (err) {
 		DPRINTFN(0, "getting device descriptor "
-		    "at addr %d failed!\n", udev->address);
+		    "at addr %d failed, %s!\n", udev->address,
+		    usb2_errstr(err));
 		goto done;
 	}
 	/* get the full device descriptor */
 	err = usb2_req_get_device_desc(udev, mtx, &udev->ddesc);
 	if (err) {
 		DPRINTFN(0, "addr=%d, getting device "
-		    "descriptor failed!\n", old_addr);
+		    "descriptor failed, %s!\n", old_addr, 
+		    usb2_errstr(err));
 		goto done;
 	}
 done:


More information about the p4-projects mailing list