Messages in this thread | | | From | Segher Boessenkool <> | Subject | Re: [RFC] MMIO accessors & barriers documentation | Date | Tue, 12 Sep 2006 17:32:13 +0200 |
| |
> 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 majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |