I do not know whether you have solved your issue or not. I suspect you use MC56F84xxx or MC56F82xxx, which have DMA module. Regarding your problem, pls refer to section 13.3.3 Destination Address Register (DMA_DARn) in MC56F847xxRM.pdf, the DMA_DAR and DMA_SAR must have byte address rather than word address.
Pls use the following code:
#define FQSPI0_SPDTR 0xE0B3
unsigned int array[SIZE]={
0x3355,0x00FF,0x3355,0x00FF,0x3355,0x00FF,0x3355,0x00FF,0x3355,0x00FF,\
0x3355,0x00FF,0x3355,0x00FF,0x3355,0x00FF
};
/DMA do the transfer function from memory buffer to SPI transmitter reg
void DMA_init()
{
//initialize the DMA0
//DMA0, 2, SPI0_RF Reciever Full, triggering source
//DMA1, 2, SPI0_TE Transmit Empty,triggering source
DMA_REQC=0x20000; //set SPI0_TE trigger DMA
DMA_SAR1=(long)&array[0]<<1;
DMA_DAR1=(long)FQSPI0_SPDTR<<1;
DMA_DSR_BCR1=0x04;
DMA_DCR1=0x70642000;
}