diff options
author | dg <dg@FreeBSD.org> | 1993-10-14 09:13:54 +0000 |
---|---|---|
committer | dg <dg@FreeBSD.org> | 1993-10-14 09:13:54 +0000 |
commit | 36e051f4b568d4ffcbea60a64392d0c8c9b3e59a (patch) | |
tree | b02f8987b8451c6b23513e6ca653761ba4859f54 /sys/dev/sio | |
parent | eb837699da243caa78b6b6ddf8065c8f6eb8a2e8 (diff) | |
download | FreeBSD-src-36e051f4b568d4ffcbea60a64392d0c8c9b3e59a.zip FreeBSD-src-36e051f4b568d4ffcbea60a64392d0c8c9b3e59a.tar.gz |
Disassociate DTR and RTS. They were coupled together and shouldn't have
been. This was necessary to work around problems with some equipment
that don't respond favorably to having these both dropped simultaneously.
Diffstat (limited to 'sys/dev/sio')
-rw-r--r-- | sys/dev/sio/sio.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/sys/dev/sio/sio.c b/sys/dev/sio/sio.c index 9dd5840..64ef339 100644 --- a/sys/dev/sio/sio.c +++ b/sys/dev/sio/sio.c @@ -41,7 +41,7 @@ * into the patch kit. Added in sioselect * from com.c. Added port 4 support. */ -static char rcsid[] = "$Header: /a/cvs/386BSD/src/sys/i386/isa/sio.c,v 1.9 1993/09/28 00:01:10 jkh Exp $"; +static char rcsid[] = "$Header: /a/cvs/386BSD/src/sys/i386/isa/sio.c,v 1.10 1993/10/12 06:32:28 davidg Exp $"; #include "sio.h" #if NSIO > 0 @@ -646,7 +646,7 @@ bidir_open_top: /* if not active, turn DTR & RTS off */ if (!com->active) - (void) commctl(com, MCR_DTR | MCR_RTS, DMBIC); + (void) commctl(com, MCR_DTR, DMBIC); /* if there was an error, take off. */ if (error != 0) { @@ -788,7 +788,7 @@ comhardclose(com) tp = com->tp; if (tp->t_cflag & HUPCL || tp->t_state & TS_WOPEN || !(tp->t_state & TS_ISOPEN)) - (void) commctl(com, 0, DMSET); + (void) commctl(com, MCR_RTS, DMSET); #ifdef COM_BIDIR com->active = com->active_in = com->active_out = FALSE; com->softDCD = FALSE; @@ -1022,10 +1022,10 @@ sioioctl(dev, cmd, data, flag, p) outb(iobase + com_cfcr, com->cfcr_image &= ~CFCR_SBREAK); break; case TIOCSDTR: - (void) commctl(com, MCR_DTR | MCR_RTS, DMBIS); + (void) commctl(com, MCR_DTR, DMBIS); break; case TIOCCDTR: - (void) commctl(com, MCR_DTR | MCR_RTS, DMBIC); + (void) commctl(com, MCR_DTR, DMBIC); break; case TIOCMSET: (void) commctl(com, tiocm2mcr(*(int *)data), DMSET); @@ -1188,7 +1188,7 @@ repeat: disable_intr(); outb(com->modem_ctl_port, com->mcr_image - &= ~(MCR_DTR | MCR_RTS)); + &= ~MCR_DTR); enable_intr(); } } @@ -1323,7 +1323,7 @@ comparam(tp, t) iobase = com->iobase; s = spltty(); if (divisor == 0) { - (void) commctl(com, 0, DMSET); /* hang up line */ + (void) commctl(com, MCR_RTS, DMSET); /* hang up line */ splx(s); return (0); } |