Re: MIPS: bus_dma(9) and cache problems

2009-11-02 Thread Ryan Stone
What sync operation are you doing?  At least for PREREAD or PREWRITE, I'd expect any dirty cache lines to be flushed to RAM.  If this isn't happening, then you may want to submit a bug report. For a PREREAD, I don't believe that it's correct to flush a dirty cache line to RAM. That would

Re: MIPS: bus_dma(9) and cache problems

2009-10-29 Thread Jason Harmening
1. code modifies data in block and this modification ends up in cache and is not written back to memory 2. right after this code calls bus_dmamap_sync for this buffer and as a result cache invalidation is performed 3. Cache function operates on cache line

MIPS: bus_dma(9) and cache problems

2009-10-26 Thread Oleksandr Tymoshenko
This problem haunts for a couple of days and I can't find a nice and clean solution so this email is actually a cry for help. The problem: There is a buffer loaded by bus_dmamap_load for use as a DMA buffer. Right before this buffer resides block of vital data structure. Consider following