I am having a setup issue with the DMA channel 0 with the DMA Controller on PPC440GX. The code I wrote is:
#if defined(CONFIG_PPC4xx_DMA) /* Setup the DMA */ DPRINTK("PPC4xx pwidth: %d\n", ppc4xx_get_peripheral_width(DMA_CH0)); ppc4xx_set_dma_mode(DMA_CH0, DMA_MODE_READ); ppc4xx_set_src_addr(DMA_CH0, (phys_addr_t)(pdev->x2mem_phys_addr + src_addr)); ppc4xx_set_dst_addr(DMA_CH0, (phys_addr_t)dst_addr); ppc4xx_set_dma_count(DMA_CH0, count); ppc4xx_enable_dma(DMA_CH0); DPRINTK("PPC4xx DMA Status: %d\n", ppc4xx_get_dma_status()); #endif The DMA never completes and leaves a residue of 'count'. What am I missing? Please Help. Sanjay