diff options
author | phk <phk@FreeBSD.org> | 2004-06-04 08:02:37 +0000 |
---|---|---|
committer | phk <phk@FreeBSD.org> | 2004-06-04 08:02:37 +0000 |
commit | 9bb2c2f2d29e403661d3a82df654de61b0356def (patch) | |
tree | 96f709f4adacd5078943626c84918a97005223bc /sys/dev/digi | |
parent | 41a29cfd2f86e0a0e54ffc45a69c5bfd031f1e2d (diff) | |
download | FreeBSD-src-9bb2c2f2d29e403661d3a82df654de61b0356def.zip FreeBSD-src-9bb2c2f2d29e403661d3a82df654de61b0356def.tar.gz |
Make the remaining serial drivers call ttyioctl() rather than calling
the linedisc directly.
Diffstat (limited to 'sys/dev/digi')
-rw-r--r-- | sys/dev/digi/digi.c | 15 |
1 files changed, 3 insertions, 12 deletions
diff --git a/sys/dev/digi/digi.c b/sys/dev/digi/digi.c index d5e4139..06d8d18 100644 --- a/sys/dev/digi/digi.c +++ b/sys/dev/digi/digi.c @@ -1275,22 +1275,13 @@ digiioctl(dev_t dev, u_long cmd, caddr_t data, int flag, struct thread *td) if (lt->c_ospeed != 0) dt->c_ospeed = tp->t_ospeed; } - error = linesw[tp->t_line].l_ioctl(tp, cmd, data, flag, td); + error = ttyioctl(dev, cmd, data, flag, td); if (error == 0 && cmd == TIOCGETA) ((struct termios *)data)->c_iflag |= port->c_iflag; - - if (error >= 0 && error != ENOIOCTL) - return (error); - s = spltty(); - error = ttioctl(tp, cmd, data, flag); - if (error == 0 && cmd == TIOCGETA) - ((struct termios *)data)->c_iflag |= port->c_iflag; - digi_disc_optim(tp, &tp->t_termios, port); - if (error >= 0 && error != ENOIOCTL) { - splx(s); + if (error >= 0 && error != ENOTTY) return (error); - } + s = spltty(); sc->setwin(sc, 0); switch (cmd) { case DIGIIO_RING: |