使用AM3354(跑linux系统,不带设备树的版本)的GPMC与FPGA连接,使用CS1,连接线为AD0-AD15,GPMC的时序配置为
GPMC_CONFIG1= 0X00601000
GPMC_CONFIG2= 0X00011001
GPMC_CONFIG3= 0X00020201
GPMC_CONFIG4= 0X08031003
GPMC_CONFIG5= 0X000F1111
GPMC_CONFIG6= 0X0F030080
由于数据速率需要达到40MB/s,所以使用EDMA模块。
EDMA部分代码参考http://processors.wiki.ti.com/index.php/AM335x_EDMA_Driver%27s_Guide中edma_test.c文件中的mem2mem的相关配置;
目前问题:
DMA读操作,在arm部分,驱动中callback函数不能正常返回,导致数据不能正常读回;从FPGA部分看去,在进行读操作时,CS信号不能正常拉低,oe信号也不正常;
各位大神,有调通edma进行gpmc与fpga通信的,帮忙分析分析是啥问题,是时序参数问题还是别的啥问题。
在此多谢!