This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

C5535 UART stops generating interrupts!

I've got a DSP application which I've been running successfully for well over a year, where a C5535 DSP is being booted and controlled by a host microprocessor over the DSP's UART interface.

Up until now, we've been using a 57600bps communications rate between the two chips, but we recently decided to increase this baud rate to approximately 550Kbps. With this change made (and only this change made) I'm now finding that after a short period of operation the C5535 UART will stop generating interrupts.

Halting the DSP when this occurs, here's what I'm reading with my emulator:

- The UART LSR register reads 0x60 (TEMT and THRE bits set)
- The UART IER register reads 0x03 (ETBEI and ERBI interrupts set)
- The UART IIR register reads 0x01 (INTID is zero, and IPEND is 1, indicating no interrupts!)

The UARTCG bit in PCGCR1 is set to 0, so the UART has a clock. UTRST and URRST are both set to 1 in PWREMU_MGMT.

If I clear and set the enable bits in IER using the emulator. this does not change the state of IIR, IPEND is always 1. Likewise if I try doing things like writing additional characters into THRE. Overall, it looks like something in the guts of the UART is getting into a bad state.

Any ideas?

  • Hi,

    Could you provide more details on the failing scenario like configuration details etc .  I have few more questions aswell.

    • Is it possible to try with other baud rates ?
    • What happens when you try writing additional characters to THRE ( it wasn't clear from your updates)
    • Looks like you are using custom board ?  If so did you try on C5535 TI hardware platform ? is this recreatable ?
    • Is CSL being used ?
    • My Observation is : Looks no error occured ( from LSR  register) and also FIFO is not enabled in this operations. Confirm.

    Regards

     Vasanth