PCI bulk data transfer


I am facing problem in PCI bulk memory transfer using DMA in AIMB-580 board

As per the AIMB-580 board User manual we are having the DMA channels available in the AIMB-580 boards. I want to do bulk memory transfer using DMA over PCI.Are there any sample code or information availabe so that we know how to execute the DMA transfer in QNX. We are able to select the DMA memory channel, but how to transfer bulk data in DMA mode. Are there any API available for DMA transfer in QNX?

Any help will be highly appreciated.


My very limited handling of DMA over PCI has been that the device in question takes care of it.
That is you program your device, eg. disk controller to use DMA, not the DMA controller directly.
I believe this is called Bus Mastering.

This link seems to suggest this is an X86 motherboard issue:

If you have a different type of motherboard or processor, you will need to check the technical specifications for the particular chips on the board.

What is it that you are trying to achieve? Are you writing a driver? AFAIK the DMA controller is on your PCI device and you need to program it directly, I don’t think there is a QNX API to do that.