Altera_Forum
Honored Contributor
13 years agoPCIe DMA not working for addresses above 4GB
HI,
I am implementing a KMDF driver for Altera Stratix4 PCIe board on Windows7 64 bit PC ( Both OS and processor are 64 bit). The devices needs that I create a Descriptor Table(DT) in a non paged memory that contains the Phy address and length of each page of the DMA buffer. Then the base physical address of this Descriptor Table is written to a device register and the device starts DMA. I see that dma works only when phy address of both buffer and the DT are below 4GB( ie.. Highpart of the phy address is 0) . When either one of these address are above 4GB the device registers indicate that data is transferred but the data does not arrive to PC (in case of Dev to Host). The device manual says that it is capable of 64 bit addressing. So do i need to do anything in the driver or host side to make the 64 bit addresses work? Thanks in advance.