Lines Matching +full:uart +full:- +full:state

1 /*-
2 * SPDX-License-Identifier: BSD-2-Clause
57 /* UART quirk flags */
61 * UART class & instance (=softc)
65 struct uart_ops *uc_ops; /* Low-level console operations. */
92 bool sc_callout:1; /* This UART is opened for callout. */
93 bool sc_fastintr:1; /* This UART uses fast interrupts. */
94 bool sc_hwiflow:1; /* This UART has HW input flow ctl. */
95 bool sc_hwoflow:1; /* This UART has HW output flow ctl. */
96 bool sc_leaving:1; /* This UART is going away. */
97 bool sc_opened:1; /* This UART is open for business. */
98 bool sc_polled:1; /* This UART has no interrupts. */
99 bool sc_txbusy:1; /* This UART is transmitting. */
100 bool sc_isquelch:1; /* This UART has input squelched. */
101 bool sc_testintr:1; /* This UART is under int. testing. */
105 int sc_altbrk; /* State for alt break sequence. */
106 uint32_t sc_hwsig; /* Signal state. Used by HW driver. */
164 return ((sc->sc_rxget == sc->sc_rxput) ? 1 : 0); in uart_rx_empty()
171 return ((sc->sc_rxput + 1 < sc->sc_rxbufsz) ? in uart_rx_full()
172 (sc->sc_rxput + 1 == sc->sc_rxget) : (sc->sc_rxget == 0)); in uart_rx_full()
180 ptr = sc->sc_rxget; in uart_rx_get()
181 if (ptr == sc->sc_rxput) in uart_rx_get()
182 return (-1); in uart_rx_get()
183 xc = sc->sc_rxbuf[ptr++]; in uart_rx_get()
184 sc->sc_rxget = (ptr < sc->sc_rxbufsz) ? ptr : 0; in uart_rx_get()
193 ptr = sc->sc_rxget; in uart_rx_next()
194 if (ptr == sc->sc_rxput) in uart_rx_next()
195 return (-1); in uart_rx_next()
197 sc->sc_rxget = (ptr < sc->sc_rxbufsz) ? ptr : 0; in uart_rx_next()
206 ptr = sc->sc_rxget; in uart_rx_peek()
207 return ((ptr == sc->sc_rxput) ? -1 : sc->sc_rxbuf[ptr]); in uart_rx_peek()
215 ptr = (sc->sc_rxput + 1 < sc->sc_rxbufsz) ? sc->sc_rxput + 1 : 0; in uart_rx_put()
216 if (ptr == sc->sc_rxget) in uart_rx_put()
218 sc->sc_rxbuf[sc->sc_rxput] = xc; in uart_rx_put()
219 sc->sc_rxput = ptr; in uart_rx_put()