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.

TMS570LC4357: Unexpected RXOVR when using MibSPI in Multi-buffer Mode

Part Number: TMS570LC4357
Other Parts Discussed in Thread: HALCOGEN

Hi,

I am observing an unexpected Receiver Overflow when using MibSPI.

I am using the MibSPI in Multi-buffer Mode.

I have monitored the RXRAM locations of the multi-buffer RAM and they change as follows.

The RAM is initialised to 0x80000000. i.e. the RXEMPTY flag is set and the RXOVR flag is clear. This is what I expect.
When I call the HALCoGen function mibspiSetData() the RXRAM changes to 0xA0000000. i.e. the RXEMPTY flag is set, the RXOVR flag is clear and now TXFULL is set. This is what I expect.
Then I call mibspiTransfer() once and the RXRAM changes to 0x403D0000. i.e. now RXOVR is set.

Why when the RXRAM was empty and a single transfer took place would RXOVR occur?

A subsequent call to mibspiGetData() does not change the RXRAM. It remains 0x403D0000.
Why doesn't reading the data clear the RXOVR flag?


Thank you.