Hi,
I'am using the SAM7S SPI (with PDC, 16 bits per transfer) in slave mode, and have exactly the same behavior here.
Here are my observations : when I prepare a buffer for transmission and enable PDC transmission, in the normal case, the PDC_TCR register immediatly decrease by 1, meaning PDC has writen the first 2 bytes into the serializer. But when the problem occurs, the PDC_TCR register doesn't decrease when I enable PDC. So when the master device starts the transmission, the first 2 bytes transmitted by my slave are incorrect. In fact, those 2 bytes are the last 2 bytes that have been sent into the serializer (during previous transmission). I don't know if that is clear here

... Sorry for my bad english !
Anyone else having the same problem ?
Any work around ?
Any advise would be welcome ! Thanks !
EricL