- The UART interrupt only handled receiver FIFO full interrupts, but we
also want to handle timeout interrupts.
* or1k/or1k_uart.c: Fix interrupts
+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
{
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;
}