Messages in this thread |  | | Date | Fri, 13 Sep 2002 23:51:13 -0400 | From | Adam Kropelin <> | Subject | Re: Streaming DMA mapping question |
| |
On Fri, Sep 13, 2002 at 01:28:42PM -0700, David S. Miller wrote: > From: Adam Kropelin <akropel1@rochester.rr.com> > Date: Fri, 13 Sep 2002 16:21:50 -0400 > > On Fri, Sep 13, 2002 at 12:36:41PM -0700, David S. Miller wrote: > > Actually, rather it appears that the i386 pci_unmap_*() routines need > > the write buffer flush as well. > > Ah, a bug then. > > On further discussion with Alan Cox, the bug is actually that > pci_map_*() needs the write buffer flush added. pci_map_*() > and pci_dma_sync_*() transfer ownership from CPU to PCI controller > as abstracted in DMA-mapping.txt Therefore these are the cases > where the CPU write buffers need to be flushed.
It seems that pci_dma_sync_*() transfers ownership in either direction. In the example from DMA-mapping.txt, it is used to transfer ownership from the PCI device to the host CPU. Additionally, the presence of the host write buffer flush indicates that it can also be used to transfer ownership from the host CPU to the PCI device.
Am I missing something?
If I'm right, would you accept a patch to clarify the issue in DMA-mapping.txt?
--Adam
- 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/
|  |