On Friday 25 June 2004 21:56, Croy, Nathan wrote:
> SUMMARY
> =======
> ftdi_sio never reasserts modem control lines once the baud has been
> set to B0.
>
> DESCRIPTION
> ===========
> Setting the baud to B0 (hangup) drops DTR.  When the baud is raised
> again, DTR is not raised.  This can cause a modem to ignore any
> commands sent to it until the device is closed and reopened.  This
> renders minicom (and other software) useless, unless you instruct the
> modem to ignore DTR.
>
> The following patch is intended to make ftdi_sio act like other
> serial devices I have used (i.e. the standard serial ports
> (/dev/ttyS*) and stallion ports (/dev/ttyE*)).  Upon setting the baud
> to something other than B0, it ensures the modem control lines are
> set back to the way they were when the port was opened.
>
> Thanks to Ian Abbott for confirming my suspicions:
> http://sourceforge.net/mailarchive/forum.php?thread_id=4984710&forum_id=12120

Nathan's email suffered from a line-folding bug (blame M$, probably!), 
so his patch came out corrupted.  I reposted an uncorrupted version a 
few days later.  It showed up in 2.6.9, but not in 2.4.28, so I'm 
resubmitting the patch against 2.4.28.

Please apply to 2.4, thanks.

Signed off by: Ian Abbott <[EMAIL PROTECTED]>

diff -ur linux-2.4.28/drivers/usb/serial/ftdi_sio.c 
linux-2.4.28-ia/drivers/usb/serial/ftdi_sio.c
--- linux-2.4.28/drivers/usb/serial/ftdi_sio.c 2004-08-08 00:26:05.000000000 
+0100
+++ linux-2.4.28-ia/drivers/usb/serial/ftdi_sio.c 2004-11-18 13:37:00.512114760 
+0000
@@ -1857,6 +1857,13 @@
   if (change_speed(port)) {
    err("%s urb failed to set baurdrate", __FUNCTION__);
   }
+  /* Ensure  RTS and DTR are raised */
+  else if (set_dtr(port, HIGH) < 0){
+   err("%s Error from DTR HIGH urb", __FUNCTION__);
+  }
+  else if (set_rts(port, HIGH) < 0){
+   err("%s Error from RTS HIGH urb", __FUNCTION__);
+  }
  }
 
  /* Set flow control */


-------------------------------------------------------
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to