Changeset View
Changeset View
Standalone View
Standalone View
sys/powerpc/powernv/opal_console.c
Show First 20 Lines • Show All 522 Lines • ▼ Show 20 Lines | |||||
static void | static void | ||||
uart_opal_intr(void *v) | uart_opal_intr(void *v) | ||||
{ | { | ||||
struct uart_opal_softc *sc = v; | struct uart_opal_softc *sc = v; | ||||
struct tty *tp = sc->tp; | struct tty *tp = sc->tp; | ||||
int c; | int c; | ||||
tty_lock(tp); | ttydisc_lock(tp); | ||||
while ((c = uart_opal_getc(sc)) > 0) | while ((c = uart_opal_getc(sc)) > 0) | ||||
ttydisc_rint(tp, c, 0); | ttydisc_rint(tp, c, 0); | ||||
ttydisc_rint_done(tp); | ttydisc_rint_done(tp); | ||||
tty_unlock(tp); | ttydisc_unlock(tp); | ||||
opal_call(OPAL_POLL_EVENTS, NULL); | opal_call(OPAL_POLL_EVENTS, NULL); | ||||
if (sc->irqres == NULL) | if (sc->irqres == NULL) | ||||
callout_reset(&sc->callout, sc->polltime, uart_opal_intr, sc); | callout_reset(&sc->callout, sc->polltime, uart_opal_intr, sc); | ||||
} | } | ||||
static int | static int | ||||
▲ Show 20 Lines • Show All 69 Lines • Show Last 20 Lines |