On Tue, Mar 04, 2003 at 09:18:40PM +0100, Benjamin Herrenschmidt wrote:
> 
> The purpose of this barrier isn not to ensure sequential access on
> either the MMIO mapping (card registers) nor the actual ring buffer
> memory mapping (could be IOs, or just real memory with PCI GART).
> 
> It's here to actually sync those 2 between each other. That is make
> sure the writes to the ring are completed before the chip is actually
> kicked. This is a nasty corner case often overlooked in drivers, see
> a mail I just posted to lkml '[RFC] IO vs. DMA and barriers'

Ooo. Quite different.

So that sounds like I'll want DRM_READMEMORYBARRIER() to call
ddi_dma_sync()

[ you've probably never seen that function before in your life, but
 I think it's a heck of a lot more self-documenting than
  "DRM_READMEMORYBARRIER()" , "mb()", or even "bus_space_barrier()"
      ;-)   ]



-------------------------------------------------------
This SF.net email is sponsored by: Etnus, makers of TotalView, The debugger 
for complex code. Debugging C/C++ programs can leave you feeling lost and 
disoriented. TotalView can help you find your way. Available on major UNIX 
and Linux platforms. Try it free. www.etnus.com
_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to