TX_MASK
tail = pp->t_tail & TX_MASK;
next = (tail + 1) & TX_MASK;
head = pp->t_head & TX_MASK;
nch = q_to_b(&tp->t_outq, buf, (head - next) & TX_MASK);
next = (next + 1) & TX_MASK;
if (tp->t_outq.c_cc && head != (pp->t_head & TX_MASK)) {
head = pp->t_head & TX_MASK;
tail = pp->t_tail & TX_MASK;
while (tail != (pp->t_head & TX_MASK))
pp->t_tail = tail = (tail + 1) & TX_MASK;
while (tail != (pp->t_head & TX_MASK))
tail = pp->t_tail & TX_MASK;
while (tail != (pp->t_head & TX_MASK) && --timo)
pp->t_tail = tail = (tail + 1) & TX_MASK;
while (tail != (pp->t_head & TX_MASK) && --timo)
bus_space_write_1(bst, bsh, DLCR_TX_INT_EN, TX_MASK);
bus_space_write_1(bst, bsh, DLCR_TX_INT_EN, TX_MASK);
bus_space_write_1(bst, bsh, DLCR_TX_INT_EN, TX_MASK);