On 14/02/18(Wed) 00:48, Tobias Ulmer wrote: > Remove the ancient tty.h DMSET etc. modem control commands. They're confusing > to someone without the historical background. No documentation doesn't help > either. > > TIOCM* serve the same purpose, are documented in tty(4) and the various *ctl() > functions use the TTYCM_ register definitions, making this mix particularly > odd > looking. > > I've modified the *ctl() functions to use the same type and name as ioctl for > clarity and correctness. Not strictly necessary, but makes me sleep better :) > > Tested lightly on sparc64. sab still works. No luna88k, sorry. > > > ## Background blah blah, skip if you just don't care :) > > I've noticed these odd DM{SET,GET,BIC,BIS} constants in serial drivers all > over the place and got curious. What do they mean? > > Turns out, "DM" is a bolt-in add-on modem by DEC you would connect to > your DH-11, apparently a 16 port serial port multiplexer for your VAX or > PDP-11. As far as I can tell, the drivers were last included in 4.3BSD. > You grey beards correct me on this. > > The DM constants and the dmctl() function to manipulate the modem > control register were added to dh in 1980 in order to support this fancy > new modem. > > Since then, just about every BSD serial driver has copied the basic structure, > spreading DM* absolutely everywhere. > > In 1982, Bill Shannon wanted to play with this control register in userspace > (tip) and the ioctl interface was expanded by TIOCM{SET,GET,BIS,BIC}, hard > coding the interface and register layout of that modem family for decades to > come. > > dh gains dm support: > https://github.com/weiss/original-bsd/commit/b47c3865305da4a404343aeedf0e3561071aae10 > > TIOCM modem control register bits show up: > https://github.com/weiss/original-bsd/commit/d9d9928137170ec2f49e62509b12d012cac154de > https://github.com/weiss/original-bsd/commit/c849aa74bd3aaa1d644d74d9628ba0e1be028e1a > > http://gunkies.org/wiki/DH11_asynchronous_serial_line_interface > http://bitsavers.trailing-edge.com/pdf/dec/unibus/ datasheets.. > > Who needs TV when you can dig up amusing trivia about early BSD development!
Your diff contains a duplicated chunk: the one in sys/tty.h. No software on codesearch.debian.net rely on the defines you're removing, so ok with me :) > Index: sys/tty.h > =================================================================== > RCS file: /home/vcs/cvs/openbsd/src/sys/sys/tty.h,v > retrieving revision 1.37 > diff -u -p -r1.37 tty.h > --- sys/tty.h 24 May 2016 16:09:07 -0000 1.37 > +++ sys/tty.h 13 Feb 2018 20:39:54 -0000 > @@ -215,12 +215,6 @@ struct speedtab { > int sp_code; /* Code. */ > }; > > -/* Modem control commands (driver). */ > -#define DMSET 0 > -#define DMBIS 1 > -#define DMBIC 2 > -#define DMGET 3 > - > /* Flags on a character passed to ttyinput. */ > #define TTY_CHARMASK 0x000000ff /* Character mask */ > #define TTY_QUOTE 0x00000100 /* Character quoted */ > > Index: arch/armv7/exynos/exuart.c > =================================================================== > RCS file: /home/vcs/cvs/openbsd/src/sys/arch/armv7/exynos/exuart.c,v > retrieving revision 1.13 > diff -u -p -r1.13 exuart.c > --- arch/armv7/exynos/exuart.c 27 Oct 2017 11:23:28 -0000 1.13 > +++ arch/armv7/exynos/exuart.c 13 Feb 2018 20:38:56 -0000 > @@ -784,37 +784,37 @@ exuartioctl( dev_t dev, u_long cmd, cadd > > case TIOCSDTR: > #if 0 > - (void) clmctl(dev, TIOCM_DTR | TIOCM_RTS, DMBIS); > + (void) clmctl(dev, TIOCM_DTR | TIOCM_RTS, TIOCMBIS); > #endif > break; > > case TIOCCDTR: > #if 0 > - (void) clmctl(dev, TIOCM_DTR | TIOCM_RTS, DMBIC); > + (void) clmctl(dev, TIOCM_DTR | TIOCM_RTS, TIOCMBIC); > #endif > break; > > case TIOCMSET: > #if 0 > - (void) clmctl(dev, *(int *) data, DMSET); > + (void) clmctl(dev, *(int *) data, TIOCMSET); > #endif > break; > > case TIOCMBIS: > #if 0 > - (void) clmctl(dev, *(int *) data, DMBIS); > + (void) clmctl(dev, *(int *) data, TIOCMBIS); > #endif > break; > > case TIOCMBIC: > #if 0 > - (void) clmctl(dev, *(int *) data, DMBIC); > + (void) clmctl(dev, *(int *) data, TIOCMBIC); > #endif > break; > > case TIOCMGET: > #if 0 > - *(int *)data = clmctl(dev, 0, DMGET); > + *(int *)data = clmctl(dev, 0, TIOCMGET); > #endif > break; > > Index: arch/armv7/imx/imxuart.c > =================================================================== > RCS file: /home/vcs/cvs/openbsd/src/sys/arch/armv7/imx/imxuart.c,v > retrieving revision 1.17 > diff -u -p -r1.17 imxuart.c > --- arch/armv7/imx/imxuart.c 30 Dec 2017 13:34:56 -0000 1.17 > +++ arch/armv7/imx/imxuart.c 13 Feb 2018 20:38:56 -0000 > @@ -701,37 +701,37 @@ imxuartioctl( dev_t dev, u_long cmd, cad > > case TIOCSDTR: > #if 0 > - (void) clmctl(dev, TIOCM_DTR | TIOCM_RTS, DMBIS); > + (void) clmctl(dev, TIOCM_DTR | TIOCM_RTS, TIOCMBIS); > #endif > break; > > case TIOCCDTR: > #if 0 > - (void) clmctl(dev, TIOCM_DTR | TIOCM_RTS, DMBIC); > + (void) clmctl(dev, TIOCM_DTR | TIOCM_RTS, TIOCMBIC); > #endif > break; > > case TIOCMSET: > #if 0 > - (void) clmctl(dev, *(int *) data, DMSET); > + (void) clmctl(dev, *(int *) data, TIOCMSET); > #endif > break; > > case TIOCMBIS: > #if 0 > - (void) clmctl(dev, *(int *) data, DMBIS); > + (void) clmctl(dev, *(int *) data, TIOCMBIS); > #endif > break; > > case TIOCMBIC: > #if 0 > - (void) clmctl(dev, *(int *) data, DMBIC); > + (void) clmctl(dev, *(int *) data, TIOCMBIC); > #endif > break; > > case TIOCMGET: > #if 0 > - *(int *)data = clmctl(dev, 0, DMGET); > + *(int *)data = clmctl(dev, 0, TIOCMGET); > #endif > break; > > Index: arch/luna88k/dev/siotty.c > =================================================================== > RCS file: /home/vcs/cvs/openbsd/src/sys/arch/luna88k/dev/siotty.c,v > retrieving revision 1.21 > diff -u -p -r1.21 siotty.c > --- arch/luna88k/dev/siotty.c 3 Nov 2017 06:54:06 -0000 1.21 > +++ arch/luna88k/dev/siotty.c 13 Feb 2018 20:39:04 -0000 > @@ -100,7 +100,7 @@ void siottyintr(void *); > void siottysoft(void *); > void siotty_rxsoft(struct siotty_softc *, struct tty *); > void siotty_txsoft(struct siotty_softc *, struct tty *); > -int siomctl(struct siotty_softc *, int, int); > +int siomctl(struct siotty_softc *, int, u_long); > > int siotty_match(struct device *, void *, void *); > void siotty_attach(struct device *, struct device *, void *); > @@ -409,7 +409,7 @@ sioparam(struct tty *tp, struct termios > } > > int > -siomctl(struct siotty_softc *sc, int control, int op) > +siomctl(struct siotty_softc *sc, int control, u_long cmd) > { > int val, s, wr5, rr; > > @@ -422,17 +422,17 @@ siomctl(struct siotty_softc *sc, int con > val |= WR5_RTS; > s = spltty(); > wr5 = sc->sc_wr[WR5]; > - switch (op) { > - case DMSET: > + switch (cmd) { > + case TIOCMSET: > wr5 &= ~(WR5_BREAK|WR5_DTR|WR5_RTS); > /* FALLTHROUGH */ > - case DMBIS: > + case TIOCMBIS: > wr5 |= val; > break; > - case DMBIC: > + case TIOCMBIC: > wr5 &= ~val; > break; > - case DMGET: > + case TIOCMGET: > val = 0; > rr = getsiocsr(sc->sc_ctl); > if (wr5 & WR5_DTR) > @@ -519,13 +519,13 @@ sioclose(dev_t dev, int flag, int mode, > (*linesw[tp->t_line].l_close)(tp, flag, p); > > s = spltty(); > - siomctl(sc, TIOCM_BREAK, DMBIC); > + siomctl(sc, TIOCM_BREAK, TIOCMBIC); > #if 0 /* because unable to feed DTR signal */ > if ((tp->t_cflag & HUPCL) > || tp->t_wopen || (tp->t_state & TS_ISOPEN) == 0) { > - siomctl(sc, TIOCM_DTR, DMBIC); > + siomctl(sc, TIOCM_DTR, TIOCMBIC); > /* Yield CPU time to others for 1 second, then ... */ > - siomctl(sc, TIOCM_DTR, DMBIS); > + siomctl(sc, TIOCM_DTR, TIOCMBIS); > } > #endif > splx(s); > @@ -568,28 +568,28 @@ sioioctl(dev_t dev, u_long cmd, caddr_t > /* the last resort for TIOC ioctl tranversing */ > switch (cmd) { > case TIOCSBRK: /* Set the hardware into BREAK condition */ > - siomctl(sc, TIOCM_BREAK, DMBIS); > + siomctl(sc, TIOCM_BREAK, TIOCMBIS); > break; > case TIOCCBRK: /* Clear the hardware BREAK condition */ > - siomctl(sc, TIOCM_BREAK, DMBIC); > + siomctl(sc, TIOCM_BREAK, TIOCMBIC); > break; > case TIOCSDTR: /* Assert DTR signal */ > - siomctl(sc, TIOCM_DTR|TIOCM_RTS, DMBIS); > + siomctl(sc, TIOCM_DTR|TIOCM_RTS, TIOCMBIS); > break; > case TIOCCDTR: /* Clear DTR signal */ > - siomctl(sc, TIOCM_DTR|TIOCM_RTS, DMBIC); > + siomctl(sc, TIOCM_DTR|TIOCM_RTS, TIOCMBIC); > break; > case TIOCMSET: /* Set modem state replacing current one */ > - siomctl(sc, *(int *)data, DMSET); > + siomctl(sc, *(int *)data, TIOCMSET); > break; > case TIOCMGET: /* Return current modem state */ > - *(int *)data = siomctl(sc, 0, DMGET); > + *(int *)data = siomctl(sc, 0, TIOCMGET); > break; > case TIOCMBIS: /* Set individual bits of modem state */ > - siomctl(sc, *(int *)data, DMBIS); > + siomctl(sc, *(int *)data, TIOCMBIS); > break; > case TIOCMBIC: /* Clear individual bits of modem state */ > - siomctl(sc, *(int *)data, DMBIC); > + siomctl(sc, *(int *)data, TIOCMBIC); > break; > case TIOCSFLAGS: /* Instruct how serial port behaves */ > error = suser(p, 0); > Index: arch/sparc64/dev/sab.c > =================================================================== > RCS file: /home/vcs/cvs/openbsd/src/sys/arch/sparc64/dev/sab.c,v > retrieving revision 1.34 > diff -u -p -r1.34 sab.c > --- arch/sparc64/dev/sab.c 30 Dec 2017 23:08:29 -0000 1.34 > +++ arch/sparc64/dev/sab.c 13 Feb 2018 20:39:12 -0000 > @@ -136,7 +136,7 @@ void sabtty_start(struct tty *); > int sabtty_param(struct tty *, struct termios *); > int sabtty_intr(struct sabtty_softc *, int *); > void sabtty_softintr(struct sabtty_softc *); > -int sabtty_mdmctrl(struct sabtty_softc *, int, int); > +int sabtty_mdmctrl(struct sabtty_softc *, int, u_long); > int sabtty_cec_wait(struct sabtty_softc *); > int sabtty_tec_wait(struct sabtty_softc *); > void sabtty_reset(struct sabtty_softc *); > @@ -749,7 +749,7 @@ sabttyopen(dev, flags, mode, p) > return (s); > > if (tp->t_cflag & HUPCL) { > - sabtty_mdmctrl(sc, 0, DMSET); > + sabtty_mdmctrl(sc, 0, TIOCMSET); > (void)tsleep(sc, TTIPRI, ttclos, hz); > } > > @@ -788,7 +788,7 @@ sabttyclose(dev, flags, mode, p) > sc->sc_flags &= ~SABTTYF_TXDRAIN; > > if (tp->t_cflag & HUPCL) { > - sabtty_mdmctrl(sc, 0, DMSET); > + sabtty_mdmctrl(sc, 0, TIOCMSET); > (void)tsleep(bc, TTIPRI, ttclos, hz); > } > > @@ -864,22 +864,22 @@ sabttyioctl(dev, cmd, data, flags, p) > SAB_READ(sc, SAB_DAFO) & ~SAB_DAFO_XBRK); > break; > case TIOCSDTR: > - sabtty_mdmctrl(sc, TIOCM_DTR, DMBIS); > + sabtty_mdmctrl(sc, TIOCM_DTR, TIOCMBIS); > break; > case TIOCCDTR: > - sabtty_mdmctrl(sc, TIOCM_DTR, DMBIC); > + sabtty_mdmctrl(sc, TIOCM_DTR, TIOCMBIC); > break; > case TIOCMBIS: > - sabtty_mdmctrl(sc, *((int *)data), DMBIS); > + sabtty_mdmctrl(sc, *((int *)data), TIOCMBIS); > break; > case TIOCMBIC: > - sabtty_mdmctrl(sc, *((int *)data), DMBIC); > + sabtty_mdmctrl(sc, *((int *)data), TIOCMBIC); > break; > case TIOCMGET: > - *((int *)data) = sabtty_mdmctrl(sc, 0, DMGET); > + *((int *)data) = sabtty_mdmctrl(sc, 0, TIOCMGET); > break; > case TIOCMSET: > - sabtty_mdmctrl(sc, *((int *)data), DMSET); > + sabtty_mdmctrl(sc, *((int *)data), TIOCMSET); > break; > case TIOCGFLAGS: > *((int *)data) = sc->sc_openflags; > @@ -931,16 +931,17 @@ sabttystop(tp, flags) > } > > int > -sabtty_mdmctrl(sc, bits, how) > +sabtty_mdmctrl(sc, bits, cmd) > struct sabtty_softc *sc; > - int bits, how; > + int bits; > + u_long cmd; > { > u_int8_t r; > int s; > > s = spltty(); > - switch (how) { > - case DMGET: > + switch (cmd) { > + case TIOCMGET: > bits = 0; > if (SAB_READ(sc, SAB_STAR) & SAB_STAR_CTS) > bits |= TIOCM_CTS; > @@ -957,7 +958,7 @@ sabtty_mdmctrl(sc, bits, how) > if ((r & (SAB_MODE_RTS|SAB_MODE_FRTS)) == SAB_MODE_RTS) > bits |= TIOCM_RTS; > break; > - case DMSET: > + case TIOCMSET: > r = SAB_READ(sc, SAB_MODE); > if (bits & TIOCM_RTS) { > r &= ~SAB_MODE_FRTS; > @@ -973,7 +974,7 @@ sabtty_mdmctrl(sc, bits, how) > r |= sc->sc_pvr_dtr; > SAB_WRITE(sc, SAB_PVR, r); > break; > - case DMBIS: > + case TIOCMBIS: > if (bits & TIOCM_RTS) { > r = SAB_READ(sc, SAB_MODE); > r &= ~SAB_MODE_FRTS; > @@ -986,7 +987,7 @@ sabtty_mdmctrl(sc, bits, how) > SAB_WRITE(sc, SAB_PVR, r); > } > break; > - case DMBIC: > + case TIOCMBIC: > if (bits & TIOCM_RTS) { > r = SAB_READ(sc, SAB_MODE); > r |= SAB_MODE_FRTS | SAB_MODE_RTS; > @@ -1021,7 +1022,7 @@ sabttyparam(sc, tp, t) > > /* hang up line if ospeed is zero, otherwise raise dtr */ > sabtty_mdmctrl(sc, TIOCM_DTR, > - (t->c_ospeed == 0) ? DMBIC : DMBIS); > + (t->c_ospeed == 0) ? TIOCMBIC : TIOCMBIS); > > dafo = SAB_READ(sc, SAB_DAFO); > > Index: dev/ic/cy.c > =================================================================== > RCS file: /home/vcs/cvs/openbsd/src/sys/dev/ic/cy.c,v > retrieving revision 1.37 > diff -u -p -r1.37 cy.c > --- dev/ic/cy.c 8 Sep 2017 05:36:52 -0000 1.37 > +++ dev/ic/cy.c 13 Feb 2018 20:39:20 -0000 > @@ -72,7 +72,7 @@ int cy_intr(void *); > int cyparam(struct tty *, struct termios *); > void cystart(struct tty *); > void cy_poll(void *); > -int cy_modem_control(struct cy_port *, int, int); > +int cy_modem_control(struct cy_port *, int, u_long); > void cy_enable_transmitter(struct cy_port *); > void cd1400_channel_cmd(struct cy_port *, int); > int cy_speed(speed_t, int *, int *, int); > @@ -345,7 +345,7 @@ cyopen(dev, flag, mode, p) > ttsetwater(tp); > > /* raise RTS too */ > - cy_modem_control(cy, TIOCM_RTS, DMBIS); > + cy_modem_control(cy, TIOCM_RTS, TIOCMBIS); > > cy->cy_carrier_stat = cd_read_reg(cy, CD1400_MSVR2); > > @@ -414,7 +414,7 @@ cyclose(dev, flag, mode, p) > !ISSET(cy->cy_openflags, TIOCFLAG_SOFTCAR)) { > /* drop DTR and RTS > (should we wait for output buffer to become empty first?) */ > - cy_modem_control(cy, 0, DMSET); > + cy_modem_control(cy, 0, TIOCMSET); > } > > /* > @@ -536,27 +536,27 @@ cyioctl(dev, cmd, data, flag, p) > break; > > case TIOCSDTR: /* DTR on */ > - cy_modem_control(cy, TIOCM_DTR, DMBIS); > + cy_modem_control(cy, TIOCM_DTR, TIOCMBIS); > break; > > case TIOCCDTR: /* DTR off */ > - cy_modem_control(cy, TIOCM_DTR, DMBIC); > + cy_modem_control(cy, TIOCM_DTR, TIOCMBIC); > break; > > case TIOCMSET: /* set new modem control line values */ > - cy_modem_control(cy, *((int *)data), DMSET); > + cy_modem_control(cy, *((int *)data), TIOCMSET); > break; > > case TIOCMBIS: /* turn modem control bits on */ > - cy_modem_control(cy, *((int *)data), DMBIS); > + cy_modem_control(cy, *((int *)data), TIOCMBIS); > break; > > case TIOCMBIC: /* turn modem control bits off */ > - cy_modem_control(cy, *((int *)data), DMBIC); > + cy_modem_control(cy, *((int *)data), TIOCMBIC); > break; > > case TIOCMGET: /* get modem control/status line state */ > - *((int *)data) = cy_modem_control(cy, 0, DMGET); > + *((int *)data) = cy_modem_control(cy, 0, TIOCMGET); > break; > > case TIOCGFLAGS: > @@ -684,8 +684,9 @@ cyparam(tp, t) > > s = spltty(); > > - /* hang up the line is ospeed is zero, else turn DTR on */ > - cy_modem_control(cy, TIOCM_DTR, (t->c_ospeed == 0 ? DMBIC : DMBIS)); > + /* hang up the line if ospeed is zero, else turn DTR on */ > + cy_modem_control(cy, TIOCM_DTR, > + (t->c_ospeed == 0 ? TIOCMBIC : TIOCMBIS)); > > /* channel was selected by the above call to cy_modem_control() */ > /* cd_write_reg(cy, CD1400_CAR, port & CD1400_CAR_CHAN); */ > @@ -807,10 +808,10 @@ cyparam(tp, t) > * > */ > int > -cy_modem_control(cy, bits, howto) > +cy_modem_control(cy, bits, cmd) > struct cy_port *cy; > int bits; > - int howto; > + u_long cmd; > { > int s, msvr; > > @@ -820,8 +821,8 @@ cy_modem_control(cy, bits, howto) > cd_write_reg(cy, CD1400_CAR, cy->cy_port_num & CD1400_CAR_CHAN); > > /* does not manipulate RTS if it is used for flow control */ > - switch (howto) { > - case DMGET: > + switch (cmd) { > + case TIOCMGET: > bits = 0; > if (cy->cy_channel_control & CD1400_CCR_RCVEN) > bits |= TIOCM_LE; > @@ -850,7 +851,7 @@ cy_modem_control(cy, bits, howto) > splx(s); > return (bits); > > - case DMSET: /* replace old values with new ones */ > + case TIOCMSET: /* replace old values with new ones */ > #ifdef CY_HW_RTS > if (!ISSET(cy->cy_tty->t_cflag, CRTSCTS)) > cd_write_reg(cy, CD1400_MSVR2, > @@ -866,7 +867,7 @@ cy_modem_control(cy, bits, howto) > #endif /* CY_HW_RTS */ > break; > > - case DMBIS: /* set bits */ > + case TIOCMBIS: /* set bits */ > #ifdef CY_HW_RTS > if (!ISSET(cy->cy_tty->t_cflag, CRTSCTS) && > (bits & TIOCM_RTS) != 0) > @@ -882,7 +883,7 @@ cy_modem_control(cy, bits, howto) > #endif /* CY_HW_RTS */ > break; > > - case DMBIC: /* clear bits */ > + case TIOCMBIC: /* clear bits */ > #ifdef CY_HW_RTS > if (!ISSET(cy->cy_tty->t_cflag, CRTSCTS) && > (bits & TIOCM_RTS)) > @@ -1023,7 +1024,7 @@ cy_poll(void *arg) > #endif > if (CY_DIALIN(tp->t_dev) && > !(*linesw[tp->t_line].l_modem)(tp, carrier)) > - cy_modem_control(cy, TIOCM_DTR, DMBIC); > + cy_modem_control(cy, TIOCM_DTR, TIOCMBIC); > > #ifdef CY_DEBUG1 > did_something = 1; > Index: dev/sbus/magma.c > =================================================================== > RCS file: /home/vcs/cvs/openbsd/src/sys/dev/sbus/magma.c,v > retrieving revision 1.27 > diff -u -p -r1.27 magma.c > --- dev/sbus/magma.c 30 Dec 2017 23:08:29 -0000 1.27 > +++ dev/sbus/magma.c 13 Feb 2018 20:39:45 -0000 > @@ -941,7 +941,7 @@ mttyclose(dev_t dev, int flag, int mode, > */ > > /* drop DTR and RTS */ > - (void)mtty_modem_control(mp, 0, DMSET); > + (void)mtty_modem_control(mp, 0, TIOCMSET); > > /* turn off the channel > CD1400_WRITE_REG(cd, CD1400_CAR, mp->mp_channel); > @@ -1026,27 +1026,27 @@ mttyioctl(dev_t dev, u_long cmd, caddr_t > break; > > case TIOCSDTR: /* set DTR */ > - mtty_modem_control(mp, TIOCM_DTR, DMBIS); > + mtty_modem_control(mp, TIOCM_DTR, TIOCMBIS); > break; > > case TIOCCDTR: /* clear DTR */ > - mtty_modem_control(mp, TIOCM_DTR, DMBIC); > + mtty_modem_control(mp, TIOCM_DTR, TIOCMBIC); > break; > > case TIOCMSET: /* set modem lines */ > - mtty_modem_control(mp, *((int *)data), DMSET); > + mtty_modem_control(mp, *((int *)data), TIOCMSET); > break; > > case TIOCMBIS: /* bit set modem lines */ > - mtty_modem_control(mp, *((int *)data), DMBIS); > + mtty_modem_control(mp, *((int *)data), TIOCMBIS); > break; > > case TIOCMBIC: /* bit clear modem lines */ > - mtty_modem_control(mp, *((int *)data), DMBIC); > + mtty_modem_control(mp, *((int *)data), TIOCMBIC); > break; > > case TIOCMGET: /* get modem lines */ > - *((int *)data) = mtty_modem_control(mp, 0, DMGET); > + *((int *)data) = mtty_modem_control(mp, 0, TIOCMGET); > break; > > case TIOCGFLAGS: > @@ -1142,7 +1142,7 @@ mtty_start(struct tty *tp) > * only let them fiddle with RTS if CRTSCTS is not enabled > */ > int > -mtty_modem_control(struct mtty_port *mp, int bits, int howto) > +mtty_modem_control(struct mtty_port *mp, int bits, u_long cmd) > { > struct cd1400 *cd = mp->mp_cd1400; > struct tty *tp = mp->mp_tty; > @@ -1152,8 +1152,8 @@ mtty_modem_control(struct mtty_port *mp, > > CD1400_WRITE_REG(cd, CD1400_CAR, mp->mp_channel); > > - switch(howto) { > - case DMGET: /* get bits */ > + switch(cmd) { > + case TIOCMGET: /* get bits */ > bits = 0; > > bits |= TIOCM_LE; > @@ -1176,7 +1176,7 @@ mtty_modem_control(struct mtty_port *mp, > > break; > > - case DMSET: /* reset bits */ > + case TIOCMSET: /* reset bits */ > if (!ISSET(tp->t_cflag, CRTSCTS)) > CD1400_WRITE_REG(cd, CD1400_MSVR2, > ((bits & TIOCM_RTS) ? CD1400_MSVR2_DTR : 0)); > @@ -1186,7 +1186,7 @@ mtty_modem_control(struct mtty_port *mp, > > break; > > - case DMBIS: /* set bits */ > + case TIOCMBIS: /* set bits */ > if ((bits & TIOCM_RTS) && !ISSET(tp->t_cflag, CRTSCTS)) > CD1400_WRITE_REG(cd, CD1400_MSVR2, CD1400_MSVR2_DTR); > > @@ -1195,7 +1195,7 @@ mtty_modem_control(struct mtty_port *mp, > > break; > > - case DMBIC: /* clear bits */ > + case TIOCMBIC: /* clear bits */ > if ((bits & TIOCM_RTS) && !ISSET(tp->t_cflag, CRTSCTS)) > CD1400_WRITE_REG(cd, CD1400_MSVR2, 0); > > @@ -1234,7 +1234,7 @@ mtty_param(struct tty *tp, struct termio > > /* hang up the line if ospeed is zero, else raise DTR */ > (void)mtty_modem_control(mp, TIOCM_DTR, > - (t->c_ospeed == 0 ? DMBIC : DMBIS)); > + (t->c_ospeed == 0 ? TIOCMBIC : TIOCMBIS)); > > /* select channel, done in mtty_modem_control() */ > /* CD1400_WRITE_REG(cd, CD1400_CAR, mp->mp_channel); */ > Index: dev/sbus/magmareg.h > =================================================================== > RCS file: /home/vcs/cvs/openbsd/src/sys/dev/sbus/magmareg.h,v > retrieving revision 1.9 > diff -u -p -r1.9 magmareg.h > --- dev/sbus/magmareg.h 29 Nov 2008 01:55:06 -0000 1.9 > +++ dev/sbus/magmareg.h 13 Feb 2018 20:39:45 -0000 > @@ -209,7 +209,7 @@ void magma_soft(void *); > > int mtty_match(struct device *, void *, void *); > void mtty_attach(struct device *, struct device *, void *); > -int mtty_modem_control(struct mtty_port *, int, int); > +int mtty_modem_control(struct mtty_port *, int, u_long); > int mtty_param(struct tty *, struct termios *); > void mtty_start(struct tty *); > > Index: dev/sbus/spif.c > =================================================================== > RCS file: /home/vcs/cvs/openbsd/src/sys/dev/sbus/spif.c,v > retrieving revision 1.20 > diff -u -p -r1.20 spif.c > --- dev/sbus/spif.c 30 Dec 2017 23:08:29 -0000 1.20 > +++ dev/sbus/spif.c 13 Feb 2018 20:39:45 -0000 > @@ -77,7 +77,7 @@ void spifsoftintr(void *); > > int stty_param(struct tty *, struct termios *); > struct tty *sttytty(dev_t); > -int stty_modem_control(struct stty_port *, int, int); > +int stty_modem_control(struct stty_port *, int, u_long); > void stty_write_ccr(struct spif_softc *, u_int8_t); > int stty_compute_baud(speed_t, int, u_int8_t *, u_int8_t *); > void stty_start(struct tty *); > @@ -435,7 +435,7 @@ sttyclose(dev, flags, mode, p) > s = spltty(); > > if (ISSET(tp->t_cflag, HUPCL) || !ISSET(tp->t_state, TS_ISOPEN)) { > - stty_modem_control(sp, 0, DMSET); > + stty_modem_control(sp, 0, TIOCMSET); > STC_WRITE(csc, STC_CAR, port); > STC_WRITE(csc, STC_CCR, > CD180_CCR_CMD_RESET|CD180_CCR_RESETCHAN); > @@ -484,22 +484,22 @@ sttyioctl(dev, cmd, data, flags, p) > STC_READ(sc, STC_SRER) | CD180_SRER_TXD); > break; > case TIOCSDTR: > - stty_modem_control(sp, TIOCM_DTR, DMBIS); > + stty_modem_control(sp, TIOCM_DTR, TIOCMBIS); > break; > case TIOCCDTR: > - stty_modem_control(sp, TIOCM_DTR, DMBIC); > + stty_modem_control(sp, TIOCM_DTR, TIOCMBIC); > break; > case TIOCMBIS: > - stty_modem_control(sp, *((int *)data), DMBIS); > + stty_modem_control(sp, *((int *)data), TIOCMBIS); > break; > case TIOCMBIC: > - stty_modem_control(sp, *((int *)data), DMBIC); > + stty_modem_control(sp, *((int *)data), TIOCMBIC); > break; > case TIOCMGET: > - *((int *)data) = stty_modem_control(sp, 0, DMGET); > + *((int *)data) = stty_modem_control(sp, 0, TIOCMGET); > break; > case TIOCMSET: > - stty_modem_control(sp, *((int *)data), DMSET); > + stty_modem_control(sp, *((int *)data), TIOCMSET); > break; > case TIOCGFLAGS: > *((int *)data) = sp->sp_openflags; > @@ -520,9 +520,10 @@ sttyioctl(dev, cmd, data, flags, p) > } > > int > -stty_modem_control(sp, bits, how) > +stty_modem_control(sp, bits, cmd) > struct stty_port *sp; > - int bits, how; > + int bits; > + u_long cmd; > { > struct spif_softc *csc = sp->sp_sc; > struct tty *tp = sp->sp_tty; > @@ -531,8 +532,8 @@ stty_modem_control(sp, bits, how) > s = spltty(); > STC_WRITE(csc, STC_CAR, sp->sp_channel); > > - switch (how) { > - case DMGET: > + switch (cmd) { > + case TIOCMGET: > bits = TIOCM_LE; > if (DTR_READ(csc, sp->sp_channel)) > bits |= TIOCM_DTR; > @@ -546,7 +547,7 @@ stty_modem_control(sp, bits, how) > if (ISSET(msvr, CD180_MSVR_RTS)) > bits |= TIOCM_RTS; > break; > - case DMSET: > + case TIOCMSET: > DTR_WRITE(csc, sp->sp_channel, ISSET(bits, TIOCM_DTR) ? 1 : 0); > if (ISSET(bits, TIOCM_RTS)) > STC_WRITE(csc, STC_MSVR, > @@ -555,14 +556,14 @@ stty_modem_control(sp, bits, how) > STC_WRITE(csc, STC_MSVR, > STC_READ(csc, STC_MSVR) | CD180_MSVR_RTS); > break; > - case DMBIS: > + case TIOCMBIS: > if (ISSET(bits, TIOCM_DTR)) > DTR_WRITE(csc, sp->sp_channel, 1); > if (ISSET(bits, TIOCM_RTS) && !ISSET(tp->t_cflag, CRTSCTS)) > STC_WRITE(csc, STC_MSVR, > STC_READ(csc, STC_MSVR) & (~CD180_MSVR_RTS)); > break; > - case DMBIC: > + case TIOCMBIC: > if (ISSET(bits, TIOCM_DTR)) > DTR_WRITE(csc, sp->sp_channel, 0); > if (ISSET(bits, TIOCM_RTS)) > @@ -598,7 +599,7 @@ stty_param(tp, t) > > /* hang up line if ospeed is zero, otherwise raise DTR */ > stty_modem_control(sp, TIOCM_DTR, > - (t->c_ospeed == 0 ? DMBIC : DMBIS)); > + (t->c_ospeed == 0 ? TIOCMBIC : TIOCMBIS)); > > STC_WRITE(sc, STC_CAR, sp->sp_channel); > > Index: sys/tty.h > =================================================================== > RCS file: /home/vcs/cvs/openbsd/src/sys/sys/tty.h,v > retrieving revision 1.37 > diff -u -p -r1.37 tty.h > --- sys/tty.h 24 May 2016 16:09:07 -0000 1.37 > +++ sys/tty.h 13 Feb 2018 20:39:54 -0000 > @@ -215,12 +215,6 @@ struct speedtab { > int sp_code; /* Code. */ > }; > > -/* Modem control commands (driver). */ > -#define DMSET 0 > -#define DMBIS 1 > -#define DMBIC 2 > -#define DMGET 3 > - > /* Flags on a character passed to ttyinput. */ > #define TTY_CHARMASK 0x000000ff /* Character mask */ > #define TTY_QUOTE 0x00000100 /* Character quoted */ >