I am having a problem in getting DMA with bursting to work on a DM3730. I can do a DMA transfer, but it appears to be non bursting. I am trying to transfer a block of 32-bit data in 16 multi-read bursts from a single address GPMC device to local memory (DDR memory). The DMA request is from an external sys_ndmareq1 pin.
The GPMC is configured as:
GPMC_CONFIG1_i = 0x7b01_1011
GPMC_CONFIG2_i = 0x000c_1b03
GPMC_CONFIG3_i = 0x0005_0505
GPMC_CONFIG4_i = 0x0c06_190A
GPMC_CONFIG5_i = 0x010e_0e1b
GPMC_CONFIG6_i = 0x0b06_03c3
The DMA is configured as:
DMA4_GCR = 0x0001c040
DMA4_CCR_i = 0x000040e3
DMA4_CLNK_CTRLi = 0x00000000
DMA4_CICRi = 0x00002200
DMA4_CSRi = 0x00000000
DMA4_CSDPi = 0x0000c182
DMA4_CENi = 0x00000100
DMA4_CFNi = 0x00000001
DMA4_CSSAi = 0x21000000
DMA4_CDSAi = 0x81000000
DMA4_CSELi = 0x00000000
DMA4_CSFLi = 0x00000000
DMA4_DSELi = 0x00000040
DMA4_CDFLi = 0x00000000
For bursting, is there something that I am not setting right?