lsr
if ((sc->lsr & LSR_OE) != 0 && (sc->ier & IER_ERLS) != 0)
sc->lsr |= LSR_OE;
sc->lsr |= LSR_TEMT | LSR_THRE;
sc->lsr |= LSR_RXRDY;
sc->lsr &= ~LSR_RXRDY;
reg = sc->lsr;
sc->lsr &= ~LSR_OE;
uint8_t lsr; /* Line status register (R/W) */
struct lsr *lsr;
lsr = ospf->ospf_lsr;
while ((uchar_t *)lsr < ((uchar_t *)ospf + fraglen)) {
if ((uchar_t *)lsr + sizeof (struct lsr) >
ospf_print_ls_type(flags, ntohl(lsr->ls_type),
lsr->ls_stateid, lsr->ls_router);
++lsr;
struct lsr6 *lsr;
lsr = ospf->ospf6_lsr;
while ((uchar_t *)lsr < ((uchar_t *)ospf + fraglen)) {
if ((uchar_t *)lsr + sizeof (struct lsr6) >
ospf6_print_ls_type(flags, ntohl(lsr->ls_type),
lsr->ls_stateid, lsr->ls_router);
++lsr;
uchar_t lsr;
lsr = asy_get(asy, ASY_LSR);
async_rxint(asy, lsr);
lsr = asy_get(asy, ASY_LSR);
if ((lsr & (ASY_LSR_TEMT | ASY_LSR_THRE)) ==
int isr, lsr, mcr, spr;
static void async_rxint(struct asycom *asy, uchar_t lsr);
lsr = asy_get(asy, ASY_LSR);
if (!(lsr & ASY_LSR_DR))
const uint8_t lsr = asy_get(asy, ASY_LSR);
intr_id, lsr);
async_rxint(asy, lsr);
if ((lsr & ASY_LSR_THRE) == 0) {
if ((lsr & ASY_LSR_THRE) && (async->async_flags & ASYNC_BUSY) &&
async_rxint(struct asycom *asy, uchar_t lsr)
while ((lsr & (ASY_LSR_DR | ASY_LSR_ERRORS)) != 0) {
lsr = asy_get(asy, ASY_LSR);
while ((lsr & (ASY_LSR_DR | ASY_LSR_ERRORS)) != 0) {
if (lsr & ASY_LSR_DR) {
if (lsr & ASY_LSR_ERRORS) {
if (lsr & ASY_LSR_PE) {
if (lsr & (ASY_LSR_FE | ASY_LSR_BI))
if (lsr & ASY_LSR_OE) {
lsr = asy_get(asy, ASY_LSR);
uftdi_rxerr_put(mblk_t **rx_mpp, mblk_t *data, uint8_t lsr)
if (lsr & FTDI_LSR_STATUS_BI) {
lsr &= ~(uint8_t)(FTDI_LSR_STATUS_PE | FTDI_LSR_STATUS_FE);
((lsr & FTDI_LSR_STATUS_OE) ? DS_OVERRUN_ERR : 0) |
((lsr & FTDI_LSR_STATUS_PE) ? DS_PARITY_ERR : 0) |
((lsr & FTDI_LSR_STATUS_FE) ? DS_FRAMING_ERR : 0) |
((lsr & FTDI_LSR_STATUS_BI) ? DS_BREAK_ERR : 0);
uint8_t lsr = FTDI_GET_LSR(data->b_rptr);
if ((uf->uf_lsr & FTDI_LSR_MASK) != (lsr & FTDI_LSR_MASK)) {
uf->uf_lsr, lsr);
uf->uf_lsr = lsr; /* THRE and TEMT captured here */
if ((lsr & FTDI_LSR_MASK) != 0 &&
uftdi_rxerr_put(&uf->uf_rx_mp, data, lsr);
uchar_t lsr;
lsr = inb(port + LSR);
if (lsr & (SERIAL_BREAK | SERIAL_FRAME |
if (lsr & SERIAL_OVERRUN) {
static void async_txint(struct asycom *asy, uchar_t lsr);
static void async_rxint(struct asycom *asy, uchar_t lsr);
uchar_t interrupt_id, lsr;
lsr = INB(LSR);
if ((lsr & BRKDET) &&
lsr = INB(LSR);
async_rxint(asy, lsr);
async_txint(asy, lsr);
async_txint(struct asycom *asy, uchar_t lsr)
if (lsr & XHRE) {
lsr = INB(LSR);
async_rxint(struct asycom *asy, uchar_t lsr)
if (lsr & (RCA|PARERR|FRMERR|BRKDET|OVRRUN)) {
while (lsr & (RCA|PARERR|FRMERR|BRKDET|OVRRUN)) {
if (lsr & RCA) {
if (lsr & (PARERR|FRMERR|BRKDET|OVRRUN)) {
if (lsr & PARERR) {
if (lsr & (FRMERR|BRKDET))
if (lsr & OVRRUN) {
lsr = INB(LSR);