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.

SPI Example Drops Last Rx Byte

I've been porting the spi non-edma example from the C6748 EVM to the C6747 EVM. The version is C6748_StarterWare_1_20_03_03. Sometimes the last byte is not received. For example if I request 260 bytes, the code stop receiving after 259 bytes. With the Debug configuration, the problem seldom occurred. With the Release configuration, the problem almost alway occurred. The problem occurs when the the Rx interrupt occurs before the Tx interrupt for a particular byte. The code assumes that Tx always occurs before Rx. A shared counter causes the Rx IRQ to be disabled early. The fix is to use separate counters. All this appears to have been fixed in LCDK version.

examples\evmC6748\spi\spiflash.c <-- BAD, broken
examples\lcdkC6748\spi\spi.c <-- GOOD, fixed

Make me wonder what else has been fixed in LCDK but left broken on the EVM version.