Hi,
I'm using a TMDXEVM8168 reference board to write a Linux device driver which would copy data from a PCIe device to system memory.
To start with, I shamelessly copied the edma3_memtomemcpytest_dma method from http://processors.wiki.ti.com/index.php/EDMA_sample_test_application and changed the dmaphyssrc1 to the base start of the PCIe device assigned by pci_resource_start() (which points to 0x2000_0000). Sadly the EDMA sets all the buffer area to 0.
The EDMA memory to memory example works fine, and I am able to make standard read/writes to the PCIe device.
I fast-read through sprugx8.pdf technical reference manual and could not find any tip on this. I have seen the http://e2e.ti.com/support/dsp/davinci_digital_media_processors/f/717/t/124668.aspx post but it didn't help either. I have also stumbled upon the epdrv example, which I'm studying currently.
Am I reading from a bad address? Should I make any initialization steps? Is there any checklist for this situation provided?
I would be really grateful for any tip or help you can provide.
Regards,
Jacek