On Wed, Oct 24, 2007 at 09:53:06AM -0700, Brooks Talley wrote: > > Hi, everyone. I'm pulling my hair out in great chunks. > > I need to get Python 2.5, using pyserial 2.2, to open a FTDI-based usb to > serial port at 250000 baud. The FTDI chip definitely supports this rate. > The port mounts at /dev/cuaU0. > > The problem is that > /usr/local/lib/python2.5/site-packages/serial/serialposix.py fails on this > line: > ispeed = ospeed = getattr(TERMIOS,'B%s' % (self._baudrate)) > > So far, I have applied these patches to uftdi.c and uftdireg.h: > http://tinyurl.com/2yye2l > > Approaching this with a machete, I have also updated > /usr/src/lib/libc/gen/termios.h to add B250000, and rebuilt world and the > kernel, and confirmed that the updated termios.h made it to /usr/include and > /usr/include/sys.
termios.h is not important - they are just constants, you should be able to use raw values in software. > Any ideas on how to get this to work? It doesn't seem like it should be this > difficult! You need to add support in the uftdi driver itself. There is an enum containing ftdi_8u232am_* fields and a switch/case in the driver. The hex value divides the 48MHz clock and leaves a factor 8. So 0x0018 should be the right value for 250000bps. There is an OpenBSD patch to calculate the rates dynamically: http://archive.openbsd.nu/?ml=openbsd-tech&a=2006-06&m=2083975 Something similar (but in better style IMHO) is commited to OpenBSD, which we should merge into our source. -- B.Walter http://www.bwct.de http://www.fizon.de [EMAIL PROTECTED] [EMAIL PROTECTED] [EMAIL PROTECTED] _______________________________________________ freebsd-hackers@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to "[EMAIL PROTECTED]"