r5958 - trunk/src/host/dfu-util/src

stefan at docs.openmoko.org stefan at docs.openmoko.org
Tue May 4 20:11:08 CEST 2010


Author: stefan
Date: 2010-05-04 20:11:08 +0200 (Tue, 04 May 2010)
New Revision: 5958

Modified:
   trunk/src/host/dfu-util/src/dfu.c
   trunk/src/host/dfu-util/src/main.c
Log:
main/dfu: Introduce second -v stage for libusb debug errors.

Giving a second -v on the commandline does now provide the error messages we get
from libusb. Also give some useful information during normal error messages.

This patch is part of a patch from wiml.
http://docs.openmoko.org/trac/ticket/1842

Modified: trunk/src/host/dfu-util/src/dfu.c
===================================================================
--- trunk/src/host/dfu-util/src/dfu.c	2010-05-04 18:11:05 UTC (rev 5957)
+++ trunk/src/host/dfu-util/src/dfu.c	2010-05-04 18:11:08 UTC (rev 5958)
@@ -44,7 +44,7 @@
         dfu_timeout = timeout;
     } else {
         if( 0 != dfu_debug_level )
-            fprintf( stderr, "dfu_init: Invalid timeout value.\n" );
+            fprintf( stderr, "dfu_init: Invalid timeout value %d.\n", timeout );
     }
 }
 
@@ -142,7 +142,9 @@
           /* wLength       */ length,
                               dfu_timeout );
     if( status < 0 ) {
-        fprintf( stderr, "%s error %d\n", __FUNCTION__, status );
+        fprintf( stderr, "%s: usb_control_msg returned %d: %s\n",
+		 __FUNCTION__,
+		 status, usb_strerror() );
     }
 
     return status;
@@ -188,7 +190,9 @@
           /* wLength       */ length,
                               dfu_timeout );
     if( status < 0 ) {
-        fprintf( stderr, "%s error %d\n", __FUNCTION__, status );
+        fprintf( stderr, "%s: usb_control_msg returned %d: %s\n",
+		 __FUNCTION__,
+		 status, usb_strerror() );
     }
 
     return status;

Modified: trunk/src/host/dfu-util/src/main.c
===================================================================
--- trunk/src/host/dfu-util/src/main.c	2010-05-04 18:11:05 UTC (rev 5957)
+++ trunk/src/host/dfu-util/src/main.c	2010-05-04 18:11:08 UTC (rev 5958)
@@ -462,6 +462,9 @@
 			exit(0);
 			break;
 		case 'v':
+			if (verbose) {
+				usb_set_debug(255);
+			}
 			verbose = 1;
 			break;
 		case 'l':
@@ -471,7 +474,8 @@
 		case 'd':
 			/* Parse device */
 			if (parse_vendprod(&vendprod, optarg) < 0) {
-				fprintf(stderr, "unable to parse `%s'\n", optarg);
+				fprintf(stderr, "unable to parse `%s' as a vendor:product\n", optarg);
+
 				exit(2);
 			}
 			dif->vendor = vendprod.vendor;
@@ -583,7 +587,8 @@
 
 		printf("Claiming USB DFU Runtime Interface...\n");
 		if (usb_claim_interface(_rt_dif.dev_handle, _rt_dif.interface) < 0) {
-			fprintf(stderr, "Cannot claim interface: %s\n",
+			fprintf(stderr, "Cannot claim interface %d: %s\n",
+				_rt_dif.interface,
 				usb_strerror());
 			exit(1);
 		}
@@ -735,7 +740,7 @@
 		exit(1);
 	}
 
-	printf("Setting Alternate Setting ...\n");
+	printf("Setting Alternate Setting #%d ...\n", dif->altsetting);
 	if (usb_set_altinterface(dif->dev_handle, dif->altsetting) < 0) {
 		fprintf(stderr, "Cannot set alternate interface: %s\n",
 			usb_strerror());




More information about the commitlog mailing list