or1k: UART also accept timeout interrupt

- The UART interrupt only handled receiver FIFO full interrupts, but we
  also want to handle timeout interrupts.

    * or1k/or1k_uart.c: Fix interrupts
This commit is contained in:
Jeff Johnston 2015-05-26 15:27:02 -04:00 committed by Corinna Vinschen
parent 58e5719a0e
commit aa26b78462
2 changed files with 9 additions and 3 deletions

View File

@ -1,3 +1,7 @@
2015-05-26 Stefan Wallentowitz <stefan.wallentowitz@tum.de>
* or1k/or1k_uart.c: Fix interrupts
2015-05-26 Stefan Wallentowitz <stefan.wallentowitz@tum.de>
* or1k/timer.c: Properly set interrupt flags

View File

@ -94,9 +94,11 @@ void _or1k_uart_interrupt_handler(uint32_t data)
{
uint8_t iir = REG8(IIR);
// Check if this is a read fifo interrupt, bit 0 indicates pending
// interrupt and the other bits are IIR_RDA
if (!(iir & 0x1) || ((iir & 0xfe) != IIR_RDA)) {
// Check if this is a read fifo or timeout interrupt, bit 0
// indicates pending interrupt and the other bits are IIR_RDA
// or IIR_TO
if (!(iir & 0x1) || ((iir & 0xfe) != IIR_RDA) ||
((iir & 0xfe) != IIR_TO)) {
return;
}