I am applying USB patches to Alan's 2.4.0-test1-acN patches.

to 2.4.0-test1-ac2 (all sent to Alan):

1.  Petko:  pegasus-2399-pre10-3.patch  (attached)
2.  Pavel:  acm-fixit.patch  (on luml)
3.  Pavel:  audio-quiet.patch  (on luml)
4.  T.Sailer:  audio-2.3.99-10-3-selector.diff (on luml)
      (and already in -ac2)
5.  JE:  usb-je.patch (on luml)

~Randy
--- /usr/src/linux/drivers/usb/pegasus.c        Tue May 23 18:22:22 2000
+++ pegasus.c   Thu May 25 18:49:46 2000
@@ -16,7 +16,7 @@
 #include <linux/usb.h>
 
 
-static const char *version = __FILE__ ": v0.3.12 2000/05/22 (C) 1999-2000 Petko 
Manolov ([EMAIL PROTECTED])\n";
+static const char *version = __FILE__ ": v0.3.13 2000/05/25 (C) 1999-2000 Petko 
+Manolov ([EMAIL PROTECTED])\n";
 
 
 #define        PEGASUS_MTU             1500
@@ -71,6 +71,7 @@
        {"Accton USB 10/100 Ethernet Adapter", 0x083a, 0x1046, NULL},
        {"IO DATA USB ET/TX", 0x04bb, 0x0904, NULL},
        {"LANEED USB Ethernet LD-USB/TX", 0x056e, 0x4002, NULL},
+       {"Sony Ethernet USB", 0x05e9, 0x0009, NULL},
        {NULL, 0, 0, NULL}
 };
 
@@ -223,7 +224,7 @@
        __u16 pkt_len;
 
        if (urb->status) {
-               info("%s: RX status %d", net->name, urb->status);
+               dbg("%s: RX status %d", net->name, urb->status);
                goto goon;
        }
 
@@ -369,9 +370,12 @@
 
        netif_stop_queue(net);
 
-       usb_unlink_urb(&pegasus->rx_urb);
-       usb_unlink_urb(&pegasus->tx_urb);
-       usb_unlink_urb(&pegasus->intr_urb);
+       if ( pegasus->rx_urb.status == -EINPROGRESS )
+               usb_unlink_urb(&pegasus->rx_urb);
+       if ( pegasus->tx_urb.status == -EINPROGRESS )   
+               usb_unlink_urb(&pegasus->tx_urb);
+       if ( pegasus->intr_urb.status == -EINPROGRESS )
+               usb_unlink_urb(&pegasus->intr_urb);
 
        MOD_DEC_USE_COUNT;
 
@@ -510,9 +514,12 @@
 
        unregister_netdev(pegasus->net);
 
-       usb_unlink_urb(&pegasus->rx_urb);
-       usb_unlink_urb(&pegasus->tx_urb);
-       usb_unlink_urb(&pegasus->intr_urb);
+       if ( pegasus->rx_urb.status == -EINPROGRESS )
+               usb_unlink_urb(&pegasus->rx_urb);
+       if ( pegasus->tx_urb.status == -EINPROGRESS )
+               usb_unlink_urb(&pegasus->tx_urb);
+       if ( pegasus->intr_urb.status == -EINPROGRESS )
+               usb_unlink_urb(&pegasus->intr_urb);
 
        kfree(pegasus);
 }

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to