我在调试C6455时,编写的驱动,异步操作读写BAR0~BAR5这5个空间都没问题,现在同步使用EDMA3读写存在这样的现象:我在驱动里把PCI的内存地址映射到了DSP外部的空间1,即0x40800000~0x408FFFFF区域,然后使用EDMA3把上层传入到驱动内存的数据搬移到DDR2的0xE2000000空间,EDMA3确实执行了搬的过程,但没有把数据搬过去,0xE2000000空间搬移的数据全为0 ,我也在DSP下看了0x40800000~0x408FFFFF区域中对应的PCI地址是有数据的,且是对的数据,请问各位PCI高手,这是这么回事啊??
感觉是0x40000000这些32个窗口都不能作为EDMA3的源地址或目的地址,因为我在DSP程序里使用EDMA3来搬,也是全为0,急啊,求告知,是驱动映射原因,还是PCI某个寄存器未配置正确的原因啊,或者硬件上哪里存在问题啊?这PCI的驱动程序是在原来DM648上修改的,我觉得驱动问题可能性不大啊,各位大神求帮忙啊!!!
user3604554:
自己来顶下啊,不能沉,高手何在啊?TI的工程师何在啊?帮帮忙啊,谢谢了!!