Bueno, hoy le toco al DSPI, he estado mirandolo a fondo y haciendolo funcionar, al final lo he conseguido.
Este SPI funciona como el eqadc y la mayoria de modulos, mediante comandos, es un buffer fifo le vas enviando comandos (de transferencias por ejemplo) y este las transmite incluyendo las configuraciones para esas transferencias.
He conseguido enviar 32bits en 2 transferencias (16+16) haciendo que el CS se active al principio y se desactive en la 2ª transferencia, con esto se podra enviar todos los bytes que se quiera de un golpe, la utilidad que queria hacer es enviar datos a una memoria SPI todo junto, en el dspic33e lo hice funcionar mediante DMA, primero se enviaba la ADDR y demas datos (WREN) y luego se volcaba todos los bytes necesarios, esto resultaba bastante comodo ya que si querias escribir 20bytes de una configuracion enviabas primero los datos (wren, address) y luego activabas la DMA para volcar todos los bytes.
En el caso de freescale me va a resultar mas simple ya que no tengo que controlar el pin CS, la idea es crear un array de comandos y enviarlos todos por DMA seria algo asi:
->Comando WREN (CS activo y desactivo)
->Comando WRITE TO ADDRESS (CS activo)
->Comando volcado de todos los bytes.... (por ejemplo 20bytes)
->Comando ultimo byte (se desactiva CS).
Todos estos comandos los escribo en un array y mediante DMA se envia todo sin tener que hacer nada mas. La diferencia entre el dspic33e y este es simplemente que tenia que enviar los bytes de wren y write to address manualmente y luego hacer el volcado de todos los bytes seguido por desactivar el CS cuando acababa la transferencia.

Otra cosa importante y util que se me olvidaba poner, el numero de bits por transferencias se puede modificar, es decir, puedes enviar un minimo de 3bits hasta 16bits por transferencia, si por ejemplo quieres enviar 8 bits pues lo haces mediante 2 transferencias de 4bits o bien 1 de 8 bits.