Hi, yes that patch helped for me on 2.4.24-pre2 (had to patch manually).
The patch is attached as usbnet.c.patch.

On Sun, 28 Dec 2003, David Brownell wrote:

Martin MOKREJ? wrote:
>
> When trying "ifconfig usb0 IP-address", I get in syslog:
>
> ...
> usb0: register usbnet at usb-0000:00:1d.0-2, Prolific PL-2301/PL-2302
> usb0: open reset fail (-32) usbnet usb-0000:00:1d.0-2, Prolific PL-2301/PL-2302

I think the right answer is just a patch to ignore open reset failures.
Thing is, some Prolific chips seem to require it, others seem to fail it.
Lacking information from Prolific, we can't do better.

hub.c: new USB device 00:1d.0-1, assigned address 5 usb.c: kmalloc IF f29aca44, numif 1 usb.c: new device strings: Mfr=1, Product=0, SerialNumber=0 usb.c: USB device number 5 default language ID 0x409 Manufacturer: Prolific Technology Inc. usb.c: unhandled interfaces on device usb.c: USB device 5 (vend/prod 0x67b/0x1) is not claimed by any active driver. Length = 18 DescriptorType = 01 USB version = 1.00 Vendor:Product = 067b:0001 MaxPacketSize0 = 8 NumConfigurations = 1 Device version = 0.01 Device Class:SubClass:Protocol = 00:00:00 Per-interface classes Configuration: bLength = 9 bDescriptorType = 02 wTotalLength = 0027 bNumInterfaces = 01 bConfigurationValue = 01 iConfiguration = 00 bmAttributes = a0 MaxPower = 100mA

 Interface: 0
 Alternate Setting:  0
   bLength             =    9
   bDescriptorType     =   04
   bInterfaceNumber    =   00
   bAlternateSetting   =   00
   bNumEndpoints       =   03
   bInterface Class:SubClass:Protocol =   ff:00:00
   iInterface          =   00
   Endpoint:
     bLength             =    7
     bDescriptorType     =   05
     bEndpointAddress    =   81 (in)
     bmAttributes        =   03 (Interrupt)
     wMaxPacketSize      = 0001
     bInterval           =   01
   Endpoint:
     bLength             =    7
     bDescriptorType     =   05
     bEndpointAddress    =   02 (out)
     bmAttributes        =   02 (Bulk)
     wMaxPacketSize      = 0040
     bInterval           =   00
   Endpoint:
     bLength             =    7
     bDescriptorType     =   05
     bEndpointAddress    =   83 (in)
     bmAttributes        =   02 (Bulk)
     wMaxPacketSize      = 0040
     bInterval           =   00
usb.c: kusbd: /sbin/hotplug add 5
hub.c: port 2, portstatus 303, change 0, 1.5 Mb/s
hub.c: port 1, portstatus 103, change 0, 12 Mb/s
hub.c: port 2, portstatus 303, change 0, 1.5 Mb/s
usb.c: registered new driver usbnet
usb0: register usbnet usb-00:1d.0-1, Prolific PL-2301/PL-2302
usb.c: usbnet driver claimed interface f29aca44
ieee1394: Node removed: ID:BUS[0-00:1023]  GUID[00e018000305e5fc]
usb-uhci.c: interrupt, status 3, frame# 1943
usb0: rxqlen 0 --> 1
NETDEV WATCHDOG: usb0: transmit timed out
usbnet.c: usb0 tx: err -2
NETDEV WATCHDOG: usb0: transmit timed out
usbnet.c: usb0 tx: err -2
NETDEV WATCHDOG: usb0: transmit timed out
usbnet.c: usb0 tx: err -2
NETDEV WATCHDOG: usb0: transmit timed out
usbnet.c: usb0 tx: err -2
NETDEV WATCHDOG: usb0: transmit timed out
usbnet.c: usb0 tx: err -2
NETDEV WATCHDOG: usb0: transmit timed out
usbnet.c: usb0 tx: err -2
NETDEV WATCHDOG: usb0: transmit timed out
usbnet.c: usb0 tx: err -2
NETDEV WATCHDOG: usb0: transmit timed out
usbnet.c: usb0 tx: err -2
NETDEV WATCHDOG: usb0: transmit timed out
usbnet.c: usb0 tx: err -2
NETDEV WATCHDOG: usb0: transmit timed out
usbnet.c: usb0 tx: err -2
NETDEV WATCHDOG: usb0: transmit timed out
usbnet.c: usb0 tx: err -2
NETDEV WATCHDOG: usb0: transmit timed out
usbnet.c: usb0 tx: err -2
NETDEV WATCHDOG: usb0: transmit timed out
usbnet.c: usb0 tx: err -2
NETDEV WATCHDOG: usb0: transmit timed out
usbnet.c: usb0 tx: err -2
NETDEV WATCHDOG: usb0: transmit timed out
usbnet.c: usb0 tx: err -2
NETDEV WATCHDOG: usb0: transmit timed out
usbnet.c: usb0 tx: err -2
NETDEV WATCHDOG: usb0: transmit timed out
usbnet.c: usb0 tx: err -2
NETDEV WATCHDOG: usb0: transmit timed out
usbnet.c: usb0 tx: err -2
usb-uhci.c: interrupt, status 2, frame# 997
usbnet.c: usb0 rx: status -84
usbnet.c: usb0 rx: status -84
usbnet.c: usb0 rx: status -84
hub.c: port 1, portstatus 100, change 3, 12 Mb/s
hub.c: port 1 connection change
hub.c: port 1, portstatus 100, change 3, 12 Mb/s
usb.c: USB disconnect on device 00:1d.0-1 address 5
usb0: unregister usbnet usb-00:1d.0-1, Prolific PL-2301/PL-2302
usbnet.c: usb0 rx shutdown, code -104
usb.c: kusbd: /sbin/hotplug remove 5
hub.c: port 2, portstatus 303, change 0, 1.5 Mb/s
hub.c: port 1, portstatus 100, change 2, 12 Mb/s
hub.c: port 1 enable change, status 100
hub.c: port 2, portstatus 303, change 0, 1.5 Mb/s



I don't know what those "err -2" mean, but maybe that's because the other
computer was not configured yet.

BTW:
I tried to use GEMBIRD USB-USB cable (UAU211), but it's not detected at all,
possibly it has unsupported chipset. Any clue on that?

Thanks!
--
Martin Mokrejs <[EMAIL PROTECTED]>
PGP5.0i key is at http://www.natur.cuni.cz/~mmokrejs
--- 1.77/drivers/usb/net/usbnet.c       Mon Nov  3 05:05:44 2003

+++ edited/drivers/usb/net/usbnet.c     Sun Dec 28 16:50:05 2003

@@ -2011,8 +2011,12 @@

 

 static int pl_reset (struct usbnet *dev)

 {

-       return pl_set_QuickLink_features (dev,

+       /* some units seem to need this reset, others reject it utterly.

+        * FIXME be more like "naplink" or windows drivers.

+        */

+       (void) pl_set_QuickLink_features (dev,

                PL_S_EN|PL_RESET_OUT|PL_RESET_IN|PL_PEER_E);

+       return 0;

 }

 

 static const struct driver_info        prolific_info = {



--- drivers/usb/usbnet.c.ori    2004-01-05 11:12:10.000000000 +0100
+++ drivers/usb/usbnet.c        2004-01-05 11:12:13.000000000 +0100
@@ -1592,14 +1592,18 @@
 }
 
 /*-------------------------------------------------------------------------*/
 
 static int pl_reset (struct usbnet *dev)
 {
-       return pl_set_QuickLink_features (dev,
-               PL_S_EN|PL_RESET_OUT|PL_RESET_IN|PL_PEER_E);
+       /* some units seem to need this reset, others reject it utterly.
+        * FIXME be more like "naplink" or windows drivers.
+        */
+       (void) pl_set_QuickLink_features (dev,
+              PL_S_EN|PL_RESET_OUT|PL_RESET_IN|PL_PEER_E);
+       return 0;
 }
 
 static const struct driver_info        prolific_info = {
        .description =  "Prolific PL-2301/PL-2302",
        .flags =        FLAG_NO_SETINT,
                /* some PL-2302 versions seem to fail usb_set_interface() */

Reply via email to