832ee5dfbd
When doing busdma sync ops for BUSDMA_COHERENT memory, there is no need for cache maintenance operations, but ensure that all prior writes have reached memory when doing a PREWRITE sync. Do not do a cache invalidate on a PREREAD sync that is also a PREWRITE sync. Do the cache invalidate sequence from the outermost to innermost, required for correct operation. Correct the sequence of busdma sync ops involved with PRE/POSTREAD syncs. When doing a PREREAD sync of an mbuf-type dma buffer, do a writeback of the first cacheline if the buffer start address is not on a cacheline boundary.