Using a DMA controller
Philipp Hasse <[email protected]> Wed, 02 Feb 2005 10:54:39 +0100
| Newsgroups | gmane.linux.real-time.rtlinux.general |
|---|---|
| Message-ID | <[email protected]> |
Hi, I have to apologize for this email to be off-topic but I searched the Internet for this and haven't found suitable informations. I would be very pleased if someone of you could help me. The driver of a PCI card uses direct access to one of the card's register located in memory to transfer data. That is, a block of data will be copied to the card using the following scheme: 1. Write the number of data words to the register 2. Write the data words, one after the other, to the same register Of course this is time expensive and as the application needs every time it could get for calculating in a RT-Task it would be a great solution if the data transfer could be done by a DMA controller. As far as I know it is neccessary to program two or three registers of the DMA controller to initiate a DMA transfer. Is it possible to program the DMA controller to perform the transfer described above, to transfer a specific number of data words to one and the same address located in memory (which is mapped into memory from a PCI card)? Will this gain CPU time for the calculation task? Maybe someone knows a good DMA programming guide or could help me with this? Many thanks Philipp Hasse _______________________________________________ Rtl mailing list [email protected] http://www2.fsmlabs.com/mailman/listinfo/rtl