Hi,
On the MCF5485, I initialize the FEC and DMA (with API_DMA given by freescale) to download file by TFTP (It's the frescale dbug application which is on my board, not the evb bord).
My code do this :
board_dlio_init()
{
// Initialize the Multi-channel DMA
MCD_initDma ((dmaRegs*)(MBAR_ADDRESS+0x8000),
(void *)MCDAPI_START, // internal SDRAM 32KByte MBAR+10000
MCD_COMM_PREFETCH_EN | MCD_RELOC_TASKS); //Relocate code in internal SDRAM
//Enable interrupts in DMA and INTC
dma_irq_enable(DMA_INTC_LVL, DMA_INTC_PRI);
// Init FEC
....................................
// Init DMA
//Enable the multi-channel DMA tasks
fec_rx_start(ch, (int8*)fecbd_get_start(ch,Rx)); // witch MCD_startDma
fec_tx_start(ch, (int8*)fecbd_get_start(ch,Tx)); // witch MCD_startDma
// start FEC
//Enable the Instruction Cache
mcf5xxx_wr_cacr(0
| MCF5XXX_CACR_IEC
| MCF5XXX_CACR_ICINVA);
// Enable interrupts level 7
board_irq_enable();
}
after when I try to send a broadcast frame, I use the DMA_continu fonction and I have a bus error.
The DMA_continu function enable the ethernet send task in API_DMA
Have you got any suggestions.
Thanks
Alex_CF