<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">ChangeSet 1.1043.1.16, 2003/02/17 10:14:43-08:00, baldrick@wanadoo.fr

[PATCH] USB speedtouch: minor speedtouch changes

Add some comments and debug info.


diff -Nru a/drivers/usb/misc/speedtouch.c b/drivers/usb/misc/speedtouch.c
--- a/drivers/usb/misc/speedtouch.c	Tue Feb 18 16:39:28 2003
+++ b/drivers/usb/misc/speedtouch.c	Tue Feb 18 16:39:28 2003
@@ -187,8 +187,8 @@
 	struct list_head spare_buffers;
 
 	struct tasklet_struct send_tasklet;
-	struct sk_buff *current_skb;
-	struct udsl_send_buffer *current_buffer;
+	struct sk_buff *current_skb;			/* being emptied */
+	struct udsl_send_buffer *current_buffer;	/* being filled */
 	struct list_head filled_buffers;
 };
 
@@ -329,13 +329,13 @@
 	struct udsl_receiver *rcv;
 	unsigned long flags;
 
-	PDEBUG ("udsl_complete_receive entered\n");
-
 	if (!urb || !(rcv = urb-&gt;context) || !(instance = rcv-&gt;instance)) {
 		PDEBUG ("udsl_complete_receive: bad urb!\n");
 		return;
 	}
 
+	PDEBUG ("udsl_complete_receive entered (urb 0x%p, status %d)\n", urb, urb-&gt;status);
+
 	tasklet_schedule (&amp;instance-&gt;receive_tasklet);
 	/* may not be in_interrupt() */
 	spin_lock_irqsave (&amp;instance-&gt;completed_receivers_lock, flags);
@@ -353,6 +353,7 @@
 	struct urb *urb;
 	struct atmsar_vcc_data *atmsar_vcc = NULL;
 	struct sk_buff *new = NULL, *tmp = NULL;
+	int err;
 
 	PDEBUG ("udsl_process_receive entered\n");
 
@@ -425,9 +426,9 @@
 					   UDSL_RCV_BUFFER_SIZE * ATM_CELL_SIZE,
 					   udsl_complete_receive,
 					   rcv);
-			if (!usb_submit_urb (urb, GFP_ATOMIC))
+			if (!(err = usb_submit_urb (urb, GFP_ATOMIC)))
 				break;
-			PDEBUG ("udsl_process_receive: submission failed\n");
+			PDEBUG ("udsl_process_receive: submission failed (%d)\n", err);
 			/* fall through */
 		default: /* error or urb unlinked */
 			PDEBUG ("udsl_process_receive: adding to spare_receivers\n");
@@ -491,13 +492,13 @@
 	struct udsl_sender *snd;
 	unsigned long flags;
 
-	PDEBUG ("udsl_complete_send entered\n");
-
 	if (!urb || !(snd = urb-&gt;context) || !(instance = snd-&gt;instance)) {
 		PDEBUG ("udsl_complete_send: bad urb!\n");
 		return;
 	}
 
+	PDEBUG ("udsl_complete_send entered (urb 0x%p, status %d)\n", urb, urb-&gt;status);
+
 	tasklet_schedule (&amp;instance-&gt;send_tasklet);
 	/* may not be in_interrupt() */
 	spin_lock_irqsave (&amp;instance-&gt;send_lock, flags);
@@ -515,6 +516,7 @@
 	struct sk_buff *skb;
 	unsigned char *target;
 	unsigned long flags;
+	int err;
 
 	PDEBUG ("udsl_process_send entered\n");
 
@@ -524,10 +526,10 @@
 		if (!list_empty (&amp;instance-&gt;filled_buffers)) {
 			buf = list_entry (instance-&gt;filled_buffers.next, struct udsl_send_buffer, list);
 			list_del (&amp;buf-&gt;list);
-			PDEBUG ("sending filled buffer\n");
+			PDEBUG ("sending filled buffer (0x%p)\n", buf);
 		} else if ((buf = instance-&gt;current_buffer)) {
 			instance-&gt;current_buffer = NULL;
-			PDEBUG ("sending current buffer\n");
+			PDEBUG ("sending current buffer (0x%p)\n", buf);
 		} else /* all buffers empty */
 			break;
 
@@ -544,10 +546,10 @@
 				   udsl_complete_send,
 				   snd);
 
-		PDEBUG ("submitting urb, contains %d cells\n", UDSL_SND_BUFFER_SIZE - buf-&gt;free_cells);
+		PDEBUG ("submitting urb 0x%p, contains %d cells\n", snd-&gt;urb, UDSL_SND_BUFFER_SIZE - buf-&gt;free_cells);
 
-		if (usb_submit_urb(snd-&gt;urb, GFP_ATOMIC) &lt; 0) {
-			PDEBUG ("submission failed!\n");
+		if ((err = usb_submit_urb(snd-&gt;urb, GFP_ATOMIC)) &lt; 0) {
+			PDEBUG ("submission failed (%d)!\n", err);
 			spin_lock_irqsave (&amp;instance-&gt;send_lock, flags);
 			list_add (&amp;snd-&gt;list, &amp;instance-&gt;spare_senders);
 			spin_unlock_irqrestore (&amp;instance-&gt;send_lock, flags);
@@ -653,7 +655,7 @@
 {
 	struct udsl_instance_data *instance = vcc-&gt;dev-&gt;dev_data;
 
-	PDEBUG ("udsl_atm_send called (skb 0x%p, skb-&gt;len %u)\n", skb, skb-&gt;len);
+	PDEBUG ("udsl_atm_send called (skb 0x%p, len %u)\n", skb, skb-&gt;len);
 
 	if (!instance) {
 		PDEBUG ("NULL instance!\n");
</pre></body></html>