On Thu, Oct 25, 2007 at 10:11:36AM +1000, Antony Mawer wrote: > On 25/10/2007 8:59 AM, Bernd Walter wrote: > >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)) > ... > >>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. > > > There looks to me to be an issue with an assignment operation (=) rather > than equality test (==) in the following section of the patch: > > > + /* Special cases for 2M and 3M. */ > + if ((speed >= UI(3000000 * 0.97)) && (speed = UI(2000000 * 0.97)) \ > && (speed <= UI(2000000 * 1.03))) { result = 1; goto done; } > > > I would imagine the "(speed = UI(2000000 * 0.97))" should be == rather > than = for this to make sense...?
Use the OpenBSD code instead - it is tested and generaly looks better. You can easily get their diffs via cvs. Rev 1.11 of uftdireg.h and 1.29 of uftdi.c -- 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]"