lkml.org 
[lkml]   [2003]   [Sep]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    SubjectRe: [linux-usb-devel] 2.6.0-test4 - PL2303 OOPS - see also 2.4.22: OOPS on disconnect PL2303 adapter
    On Wed, Sep 03, 2003 at 06:13:19AM +0800, Michael Frank wrote:
    > On Wednesday 03 September 2003 00:43, Greg KH wrote:
    > > On Tue, Sep 02, 2003 at 01:39:08AM +0800, Michael Frank wrote:
    > > > PL2303 is used to connect the serial console on a classic serial port
    > > > of a test machine. HW nandshaking is used
    > > > The test machine reboots once a minute and dumps lots of messages
    > > >
    > > > Frequently:
    > > > - driver hangs
    > > > - userspace (cu) can't be stopped
    > > > - pl2303 and/or usbserial can't be unloaded
    > > > - USB interrupts stop
    > > > - problems result in requiring a reboot.
    > >
    > > Hm, it looks like you physically removed the device, is that correct?
    > > Or were you just unloading the pl2303 and other USB drivers and then
    > > reloading them?
    > >
    > > What exactly were you doing in this log?
    > >
    > > Oh, and can you send a copy of /proc/bus/usb/devices with your pl2303
    > > device plugged in?
    > >
    >
    > Whenever it stops working I follow this sequence, which you can match
    > to the logs.
    >
    > 1) Exit cu by ~.
    > - if this does not work
    > try \r~.
    > - if this does not work
    > Send SIGHUP, (which so far always worked)
    >
    > 2) Start cu again
    > - if it prints leftover characters
    > exit cu again by ~. and continue from step 2)

    Ah, I think I just found this problem.

    Try the patch below and let me know if this solves it for you or not.

    Oh, and where is the copy of /proc/bus/usb/devices with your device
    plugged in? :)

    thanks,

    greg k-h


    # USB: fix data toggle problem for pl2303 driver.

    diff -Nru a/drivers/usb/serial/pl2303.c b/drivers/usb/serial/pl2303.c
    --- a/drivers/usb/serial/pl2303.c Tue Sep 2 16:49:31 2003
    +++ b/drivers/usb/serial/pl2303.c Tue Sep 2 16:49:31 2003
    @@ -404,6 +404,9 @@

    dbg("%s - port %d", __FUNCTION__, port->number);

    + usb_clear_halt(serial->dev, port->write_urb->pipe);
    + usb_clear_halt(serial->dev, port->read_urb->pipe);
    +
    #define FISH(a,b,c,d) \
    result=usb_control_msg(serial->dev, usb_rcvctrlpipe(serial->dev,0), \
    b, a, c, d, buf, 1, 100); \
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/
    \
     
     \ /
      Last update: 2005-03-22 13:48    [W:0.024 / U:29.228 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site