Date: Thu, 04 Dec 2008 16:15:00 -0500 From: Gabor <gabor@sentex.net> To: freebsd-usb@freebsd.org Subject: Re: ucom serial bug? Message-ID: <49384854.8000008@sentex.net> In-Reply-To: <200812042141.20836.hselasky@c2i.net> References: <200812041853.35539.hselasky@c2i.net> <20081204.114842.-1540410064.imp@bsdimp.com> <49382D74.1030907@sentex.net> <200812042141.20836.hselasky@c2i.net>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi Hans, we just tested against RELENG_7 with the patch and we get the same behaviour. First time we get carrier but not on the second or subsequent try. Here is the patch we used. --- uftdi.c.orig 2008-12-04 15:54:42.000000000 -0500 +++ uftdi.c 2008-12-04 15:54:45.000000000 -0500 @@ -54,6 +54,7 @@ #include <sys/ioccom.h> #include <sys/fcntl.h> #include <sys/conf.h> +#include <sys/serial.h> #include <sys/tty.h> #include <sys/file.h> @@ -457,13 +458,25 @@ { struct uftdi_softc *sc = vsc; u_char msr, lsr; + u_char ftdi_msr; DPRINTFN(15,("uftdi_read: sc=%p, port=%d count=%d\n", sc, portno, *count)); - msr = FTDI_GET_MSR(*ptr); + ftdi_msr = FTDI_GET_MSR(*ptr); lsr = FTDI_GET_LSR(*ptr); + msr = 0; + if (ftdi_msr & FTDI_SIO_CTS_MASK) + msr |= SER_CTS; + if (ftdi_msr & FTDI_SIO_DSR_MASK) + msr |= SER_DSR; + if (ftdi_msr & FTDI_SIO_RI_MASK) + msr |= SER_RI; + if (ftdi_msr & FTDI_SIO_RLSD_MASK) + msr |= SER_DCD; + + #ifdef USB_DEBUG if (*count != 2) DPRINTFN(10,("uftdi_read: sc=%p, port=%d count=%d data[0]=" On 12/4/08 3:41 PM, Hans Petter Selasky wrote: > On Thursday 04 December 2008, Gabor wrote: >> Hi Warner, >> >> this patch did not seem to fix the issue. In fact this time after >> unloading the module and reloading it, and then checking the carrier >> doesn't raise carrier even on the first try. >> > > Can it be that the new mpsafetty layer does not remember the TTY state (MSR > bits) betweeen two open/close sessions ? > > The uftdi driver will only report deltas in the MSR register. > > --HPS > -- Success is the result when preparation meets opportunity.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?49384854.8000008>