PERFORCE change 154057 for review
Hans Petter Selasky
hselasky at FreeBSD.org
Thu Dec 4 10:58:20 PST 2008
http://perforce.freebsd.org/chv.cgi?CH=154057
Change 154057 by hselasky at hselasky_laptop001 on 2008/12/04 18:58:02
Patch from "Ian Lepore" to support proper
decoding of MSR bits.
Affected files ...
.. //depot/projects/usb/src/sys/dev/usb2/serial/uftdi2.c#12 edit
Differences ...
==== //depot/projects/usb/src/sys/dev/usb2/serial/uftdi2.c#12 (text+ko) ====
@@ -470,6 +470,7 @@
{
struct uftdi_softc *sc = xfer->priv_sc;
uint8_t buf[2];
+ uint8_t ftdi_msr;
uint8_t msr;
uint8_t lsr;
@@ -481,9 +482,19 @@
}
usb2_copy_out(xfer->frbuffers, 0, buf, 2);
- msr = FTDI_GET_MSR(buf);
+ ftdi_msr = FTDI_GET_MSR(buf);
lsr = FTDI_GET_LSR(buf);
+ 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;
+
if ((sc->sc_msr != msr) ||
((sc->sc_lsr & FTDI_LSR_MASK) != (lsr & FTDI_LSR_MASK))) {
DPRINTF("status change msr=0x%02x (0x%02x) "
More information about the p4-projects
mailing list