Use tty->t_sc to find out softc.

This commit is contained in:
phk 2004-09-18 16:43:44 +00:00
parent dbc4789a66
commit 6409278aaf
2 changed files with 11 additions and 12 deletions

View File

@ -150,8 +150,7 @@ uart_tty_oproc(struct tty *tp)
{
struct uart_softc *sc;
KASSERT(tp->t_dev != NULL, ("foo"));
sc = tp->t_dev->si_drv1;
sc = tp->t_sc;
if (sc == NULL || sc->sc_leaving)
return;
@ -194,8 +193,7 @@ uart_tty_param(struct tty *tp, struct termios *t)
struct uart_softc *sc;
int databits, parity, stopbits;
KASSERT(tp->t_dev != NULL, ("foo"));
sc = tp->t_dev->si_drv1;
sc = tp->t_sc;
if (sc == NULL || sc->sc_leaving)
return (ENODEV);
if (t->c_ispeed != t->c_ospeed && t->c_ospeed != 0)
@ -245,7 +243,7 @@ uart_tty_modem(struct tty *tp, int biton, int bitoff)
{
struct uart_softc *sc;
sc = tp->t_dev->si_drv1;
sc = tp->t_sc;
if (biton != 0 || bitoff != 0)
UART_SETSIG(sc, SER_DELTA(bitoff|biton) | biton);
return (sc->sc_hwsig);
@ -256,7 +254,7 @@ uart_tty_break(struct tty *tp, int state)
{
struct uart_softc *sc;
sc = tp->t_dev->si_drv1;
sc = tp->t_sc;
UART_IOCTL(sc, UART_IOCTL_BREAK, state);
}
@ -265,8 +263,7 @@ uart_tty_stop(struct tty *tp, int rw)
{
struct uart_softc *sc;
KASSERT(tp->t_dev != NULL, ("foo"));
sc = tp->t_dev->si_drv1;
sc = tp->t_sc;
if (sc == NULL || sc->sc_leaving)
return;
if (rw & FWRITE) {
@ -342,6 +339,7 @@ uart_tty_attach(struct uart_softc *sc)
tp = ttyalloc();
sc->sc_u.u_tty.tp = tp;
tp->t_sc = sc;
sc->sc_u.u_tty.si[0] = make_dev(&uart_cdevsw,
device_get_unit(sc->sc_dev), UID_ROOT, GID_WHEEL, 0600, "ttyu%r",

View File

@ -263,6 +263,7 @@ zstty_attach(device_t dev)
sc->sc_oget = sc->sc_obuf;
tp = ttyalloc();
tp->t_sc = sc;
sc->sc_si = make_dev(&zstty_cdevsw, device_get_unit(dev),
UID_ROOT, GID_WHEEL, 0600, "%s", device_get_desc(dev));
sc->sc_si->si_drv1 = sc;
@ -525,7 +526,7 @@ zsttystart(struct tty *tp)
struct zstty_softc *sc;
uint8_t c;
sc = tp->t_dev->si_drv1;
sc = tp->t_sc;
if ((tp->t_state & TS_TBLOCK) != 0)
/* XXX clear RTS */;
@ -582,7 +583,7 @@ zsttystop(struct tty *tp, int flag)
{
struct zstty_softc *sc;
sc = tp->t_dev->si_drv1;
sc = tp->t_sc;
if ((flag & FREAD) != 0) {
/* XXX stop reading, anything to do? */;
@ -602,7 +603,7 @@ zsttyparam(struct tty *tp, struct termios *t)
{
struct zstty_softc *sc;
sc = tp->t_dev->si_drv1;
sc = tp->t_sc;
return (zstty_param(sc, tp, t));
}
@ -612,7 +613,7 @@ zsttybreak(struct tty *tp, int brk)
{
struct zstty_softc *sc;
sc = tp->t_dev->si_drv1;
sc = tp->t_sc;
if (brk)
ZS_WRITE_REG(sc, 5, ZS_READ_REG(sc, 5) | ZSWR5_BREAK);