Re: PCI DMA - memory-to-io data transfer

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I have to transfer only 18kilobytes from one location(mapped to PCI card) to another location(kernel memory). Transfer should happen at very fast rate. PCI card doesn't have any processor and bus master capability. PCI card is designed by FPGA. So, How do i make it ? What is the best solution ?
Pls help me.

Arjan van de Ven <arjan@xxxxxxxxxxxxx> wrote:
On Thu, 2006-02-23 at 02:15 -0800, munees waran wrote:
> Hi Arjan,
>
> once the system boots up, memory and IO regions will be allocated to
> PCI card. PCI card doesn't have bus master feature.
>
> If I want to read data from memory or IO regions, memcopy() only be
> used. Or can i use motherboard dma to transfer the data ?


there is no motherboard dma engine that is usable (the ISA bus one does
not count, that can't reach the PCI bus and can only deal with the lower
16Mb of addresses)

>
> memcpy_from_io() is just reading from io region and copying to memory
> using normal transfer method. Pls help me to resolve this.


you need memcpy_from_io() and not memcpy() because it's from an io
range; memcpy() would not be correct (it might work, or rather, appear
to work but isn't a good idea since it's not portable to other
architectures and maybe not even future x86)





Yahoo! Autos. Looking for a sweet ride? Get pricing, reviews, & more on new and used cars.

[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux