mirror of
https://github.com/freebsd/freebsd-src
synced 2024-10-17 13:53:39 +00:00
Add support for CTS modemsignal as well.
RI does not seem to be supported.
This commit is contained in:
parent
950cc39559
commit
d5bd33eeac
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=136052
|
@ -134,6 +134,7 @@ SYSCTL_INT(_hw_usb_uplcom, OID_AUTO, debug, CTLFLAG_RW,
|
|||
|
||||
#define UPLCOM_SET_REQUEST 0x01
|
||||
#define UPLCOM_SET_CRTSCTS 0x41
|
||||
#define RSAQ_STATUS_CTS 0x80
|
||||
#define RSAQ_STATUS_DSR 0x02
|
||||
#define RSAQ_STATUS_DCD 0x01
|
||||
|
||||
|
@ -799,10 +800,18 @@ uplcom_intr(usbd_xfer_handle xfer, usbd_private_handle priv, usbd_status status)
|
|||
|
||||
sc->sc_lsr = sc->sc_msr = 0;
|
||||
pstatus = buf[8];
|
||||
if (ISSET(pstatus, RSAQ_STATUS_CTS))
|
||||
sc->sc_msr |= SER_CTS;
|
||||
else
|
||||
sc->sc_msr &= ~SER_CTS;
|
||||
if (ISSET(pstatus, RSAQ_STATUS_DSR))
|
||||
sc->sc_msr |= SER_DSR;
|
||||
else
|
||||
sc->sc_msr &= ~SER_DSR;
|
||||
if (ISSET(pstatus, RSAQ_STATUS_DCD))
|
||||
sc->sc_msr |= SER_DCD;
|
||||
else
|
||||
sc->sc_msr &= ~SER_DCD;
|
||||
ucom_status_change(&sc->sc_ucom);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue