search for: serial_tx_interrupt

Displaying 4 results from an estimated 4 matches for "serial_tx_interrupt".

2011 Oct 12
1
[PATCH] ns16550: fix poll handling regression
...R | LSR_THRE; if ( uart->intr_works ) return; /* Interrupts work - no more polling */ - while ( (lsr = ns_read_reg(uart, LSR)) & (LSR_DR|LSR_THRE) ) + while ( (lsr = ns_read_reg(uart, LSR)) & mask ) { if ( lsr & LSR_THRE ) + { serial_tx_interrupt(port, regs); + mask &= ~LSR_THRE; + } if ( lsr & LSR_DR ) serial_rx_interrupt(port, regs); } _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
2012 May 24
0
[PATCH RFC 2/9] console: prepare for non-COMn port support
...ck = SPIN_LOCK_UNLOCKED } +static struct serial_port com[SERHND_IDX + 1] = { + [0 ... SERHND_IDX] = { + .rx_lock = SPIN_LOCK_UNLOCKED, + .tx_lock = SPIN_LOCK_UNLOCKED + } }; void serial_rx_interrupt(struct serial_port *port, struct cpu_user_regs *regs) @@ -81,6 +83,8 @@ void serial_tx_interrupt(struct serial_p port->driver->putc( port, port->txbuf[mask_serial_txbuf_idx(port->txbufc++)]); } + if ( i && port->driver->flush ) + port->driver->flush(port); } spin_unlock(&port->tx_lock);...
2010 Feb 24
4
Re: [Xen-changelog] [xen-3.4-testing] x86: Generalise BUGFRAME_dump mechanism to allow polled UART irq to
...gs) > +{ > +    struct serial_port *port = this_cpu(poll_port); > +    struct ns16550 *uart = port->uart; > >     if ( uart->intr_works ) >         return;     /* Interrupts work - no more polling */ > @@ -166,6 +168,16 @@ static void ns16550_poll(void *data) >         serial_tx_interrupt(port, regs); > >     set_timer(&uart->timer, NOW() + MILLISECS(uart->timeout_ms)); > +} > + > +static void ns16550_poll(void *data) > +{ > +    this_cpu(poll_port) = data; > +#ifdef run_in_exception_handler > +    run_in_exception_handler(__ns16550_poll); > +...
2013 Aug 13
13
[PATCH v8 8/5] Add UART support and arch timer initialization for OMAP5
Since OMAP UART has a few distinct features than common 8250 UART, I re-implemented its driver rather than porting it based on ns16550.c. There are mainly two big differences between the implementations. First, OMAP UART introduces the concept of register access mode, which divides the register map into seperated space. Switching the access mode is then necessary when configuring it. Second, THRE