prepare_to_read_dma_memory() is the operation that an ethernet
driver's RX code wants. And this is _completely_ unrelated to
MMIO. It just wants to make sure that the device and host are
looking at the same data. Often this involves polling a DMA
descriptor (or index, stored inside DMA-able memory) looking for
changes.
flush_my_writes_to_dma_memory() is the operation that an ethernet
driver's TX code wants, to precede either an MMIO "poke" or any
other non-MMIO operation where the driver needs to be certain that
the write is visible to the PCI device, should the PCI device
desire to read that area of memory.
Because those are the operations, those should be the actual
function names, too (well, prefixed with pci_). Architectures
can implement them whatever way is appropriate, or perhaps default
to some ultra-strong semantics if they prefer; driver writers
should not have to know about the underlying mechanics (like why
we need which barriers).
Segher
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]