[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH 3/4] xen: set the right flags when enabling interrupts for 8250



Previous bits setting would cause generating THRE interrupts, which cannot
be cleared and make system loop in gic_interrupt endlessly. Set 'received
data available' and 'receiver line status' bits of IER when enabling
interrupts as what Linux 8250 driver does.

Signed-off-by: Chen Baozi <baozich@xxxxxxxxx>
---
 xen/drivers/char/ns16550.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/xen/drivers/char/ns16550.c b/xen/drivers/char/ns16550.c
index 9248330..60512be 100644
--- a/xen/drivers/char/ns16550.c
+++ b/xen/drivers/char/ns16550.c
@@ -237,8 +237,8 @@ static void ns16550_setup_postirq(struct ns16550 *uart)
         ns_write_reg(uart,
                      UART_MCR, UART_MCR_OUT2 | UART_MCR_DTR | UART_MCR_RTS);
 
-        /* Enable receive and transmit interrupts. */
-        ns_write_reg(uart, UART_IER, UART_IER_ERDAI | UART_IER_ETHREI);
+        /* Enable receive and line status interrupts. */
+        ns_write_reg(uart, UART_IER, UART_IER_ERDAI | UART_IER_ELSI);
     }
 
     if ( uart->irq >= 0 )
-- 
1.8.1.4


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.