Radek Vanhara

PSC on MCF5485

Discussion created by Radek Vanhara on Jan 19, 2009
Latest reply on Jan 28, 2009 by Radek Vanhara
Hello everybody,
I have new board phyCore5485. Now I'm trying to send and receive data to/from UART via Multichannel DMA. Sending data is working well, but I have trouble with reception. Whenever I launch the MCD_startDma function (from freescale API), the DMA interrupt is invoked immediately and RX buffer contains only one received byte.

Here is part of my code:

MCD_initDma ((dmaRegs*)(MBAR_ADDRESS+0x8000),(void *)(MCDAPI_ADDRESS), MCD_COMM_PREFETCH_EN | MCD_RELOC_TASKS);

dma_irq_enable(UART_DMA_INTERRUPT_LEVEL,UART_DMA_INTERRUPT_PRIORITY);

MCD_startDma(
0, // channel
(u8*)&MCF_PSC_RB(portNumber), // source addr
0, // source increment
_buff, /destination addr
1, // destination increment
(u32)(_size), // size
1, // Xfer size
4, // initiator PSC0 Rx
6, // priority
MCD_SINGLE_DMA | MCD_INTERRUPT, // flags
MCD_NO_CSUM | MCD_NO_BYTE_SWAP | MCD_NO_BIT_REV );


I have really no idea where could be a problem.

Can somebady help me?

Cheers Radek

Message Edited by Radek21 on 2009-01-19 01:36 PM

Outcomes