Dear all,

Recently I submitted a fix to allow pl2303 usb/serial converters to send
break signals. There was a typo in the original driver and greg KH
posted a patch to the list.

Since then, I've discovered some curious behavior if a small number of
these devices are connected to a usb hub. I have a small number of suns
which I want to control with serial bridge converters. On receipt of a
break signal sun boxes go into a paused state (they drop to their
OpenBoot environment). Individually the devices can turn on the break
signal however when you get up to about 5-7 devices all connected via
the same usb hub break signaling sometimes appears to be ineffective.
i.e. it works sometimes but mostly doesn't.

The only solution I have found for this so far is to hack the driver to
send many break on usb_control_msg's to the device. Which is a bit
horrible but appears to work. i.e put something like this in
pl2303_break_ctl:

 if (state==BREAK_ON) {
    for(i=0;i<10;i++) {
      result = usb_control_msg (serial->dev, usb_sndctrlpipe
               (serial->dev, 0), BREAK_REQUEST, BREAK_REQUEST_TYPE,
               state, 0, NULL, 0, 5*HZ);
      if (result) printk("%s - send break error from usb_control_msg
                   (attempt %d)= %d", __FUNCTION__, i, result);
    }
 } else {
   result = usb_control_msg (serial->dev,
                             usb_sndctrlpipe (serial->dev, 0),
                             BREAK_REQUEST, BREAK_REQUEST_TYPE, state,
                             0, NULL, 0, 5*HZ);
   if (result) printk("%s - send break error from usb_control_msg = %d",
                __FUNCTION__, result);


There are no timeout or other error messages from the usb_control_msg
statement in the driver. As far as I can tell, the function returns
normally with a zero exit status.

Is there a problem with the device/the linux usb subsystem or usb here?

I'm happy enough to use that hack on my machines but I'm not happy to
submit it as a proper fix for the driver.

Regards,
Martin.

-- 
-- Dr MDT Evans, Computing Services, Queen Mary, University of London



-------------------------------------------------------
This SF.net email is sponsored by: eBay
Get office equipment for less on eBay!
http://adfarm.mediaplex.com/ad/ck/711-11697-6916-5
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to