Lines Matching refs:up
31 struct uart_8250_port *up = up_to_u8250p(port); in fsl8250_handle_irq() local
33 spin_lock_irqsave(&up->port.lock, flags); in fsl8250_handle_irq()
37 spin_unlock(&up->port.lock); in fsl8250_handle_irq()
42 if (unlikely(up->lsr_saved_flags & UART_LSR_BI)) { in fsl8250_handle_irq()
43 up->lsr_saved_flags &= ~UART_LSR_BI; in fsl8250_handle_irq()
45 spin_unlock(&up->port.lock); in fsl8250_handle_irq()
49 lsr = orig_lsr = up->port.serial_in(&up->port, UART_LSR); in fsl8250_handle_irq()
53 (up->ier & (UART_IER_RLSI | UART_IER_RDI))) { in fsl8250_handle_irq()
54 lsr = serial8250_rx_chars(up, lsr); in fsl8250_handle_irq()
58 if ((orig_lsr & UART_LSR_OE) && (up->overrun_backoff_time_ms > 0)) { in fsl8250_handle_irq()
61 up->ier = port->serial_in(port, UART_IER); in fsl8250_handle_irq()
62 if (up->ier & (UART_IER_RLSI | UART_IER_RDI)) { in fsl8250_handle_irq()
68 cancel_delayed_work(&up->overrun_backoff); in fsl8250_handle_irq()
71 delay = msecs_to_jiffies(up->overrun_backoff_time_ms); in fsl8250_handle_irq()
72 schedule_delayed_work(&up->overrun_backoff, delay); in fsl8250_handle_irq()
75 serial8250_modem_status(up); in fsl8250_handle_irq()
77 if ((lsr & UART_LSR_THRE) && (up->ier & UART_IER_THRI)) in fsl8250_handle_irq()
78 serial8250_tx_chars(up); in fsl8250_handle_irq()
80 up->lsr_saved_flags |= orig_lsr & UART_LSR_BI; in fsl8250_handle_irq()
82 uart_unlock_and_check_sysrq_irqrestore(&up->port, flags); in fsl8250_handle_irq()