In order to use SSP for bidirectional data transfer, I think we have to use SSP without DMA. To do a single transmission should not be difficult but in order to handle it efficiently for multi words transmission using interrupt driven routines will be completely different.
I really like to see examples on accessing the SSP data FIFO directly too. There is very little information about it in the datasheet. I cannot even find out the size of the FIFO!