P1010 UART controller ETHREI interrupt not pending

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

P1010 UART controller ETHREI interrupt not pending

375 Views
1227787871
Contributor I

P10101 board UART ETHREI  interrupt can not pending,which causes data can not be sent out through serial port. P1010 uart uses 8250 uart driver,and i find two known bugs which are fixed through two flags UART_BUG_TXEN and UART_BUG_THRE。 These bugs are similar with the problem I encountered, except that I encounter this problem when the serial is be using normally, but UART_BUG_TXEN and UART_BUG_THRE are detected and set when UART startup。How to handle this problem?The following is the UART register scene when the problem occure:

0x4500 : 0x00

0x4501 : 0x07

0x4502 : 0xc1

0x4503 : 0x13

0x4504 : 0x0b

0x4505 : 0x60

0x4506 : 0x00

0x4507 : 0x00

0x4508 : 0x00

0x4510 : 0x01

The ETHREI interrupt is enable,  TEMT and THRE are set, but no interrupt is pending. I need emphasize that i encountered when the serial is be using normally and the two flags "UART_BUG_TXEN and UART_BUG_THRE" is not set.

0 Kudos
1 Reply

269 Views
alexander_yakov
NXP Employee
NXP Employee

According to P1010 Reference Manual, Table 11-4, interrupt request from "UTHR empty" event may be cleared by the following actions: "Read the UIIR or write to the UTHR." This means writing to UTHR register is not the only option to clear interrupt request from this event, you can also clear this event by reading UIIR. This actually means there may be a situation, where UTHR is empty, but interrupt from this request in not pending because it is cleared already by occasional reading of UIIR.

This situation is shown in your register dump - register ULSR shows UTHR empty, but register UIIR shows no pending events


Have a great day,
Alexander
TIC

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos