forked from Github_Repos/cvw
added potential fix to overrun error and fifo interrupt error. test passes
This commit is contained in:
parent
b137a95a35
commit
6fdd603ba1
@ -1081,8 +1081,9 @@ uart_read_LSR_IIR:
|
||||
bne a4, t6, uart_read_LSR_IIR
|
||||
j uart_data_ready
|
||||
uart_rxfifo_timout:
|
||||
li t4, 0x10000000 // read from the fifo
|
||||
li t4, 0x10000000 // read from the fifo to clear the rx timeout error
|
||||
lb t5, 0(t4)
|
||||
sb t5, 0(t4) // write back to the fifo to make sure we have the same data so expected future overrun errors still occur.
|
||||
//read the fifo until empty
|
||||
j uart_read_LSR_IIR
|
||||
|
||||
@ -1090,6 +1091,7 @@ uart_rxfifo_timout:
|
||||
uart_data_ready:
|
||||
li t2, 0
|
||||
sw t2, 0(t1) // clear entry deadbeef from memory
|
||||
lbu t4, 0(t3) // re read IIR
|
||||
andi t5, t5, 0x9F // mask THRE and TEMT from signature
|
||||
sb t4, 1(t1) // IIR
|
||||
sb t5, 0(t1) // LSR
|
||||
|
Loading…
Reference in New Issue
Block a user