tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

RFC: New bus_space routine: bus_space_sync



For prefetchable regions (like framebuffers) mapped by bus_space_map, there is 
a need to able force the contents out of the cache back into memory (especially 
when the cache is a writeback cache).

There is no MI way to do this with the bus_space framework so I'm proposing we 
add a:

        void bus_space_sync(bus_space_tag_t bst,
                bus_space_handle_t bsh,
                bus_size_t offset,
                bus_size_t length,
                int ops);

where ops is one of:

#define BUS_SPACE_SYNC_WB       1 // defined by MD
#define BUS_SPACE_SYNC_WBINV    2 // defined by MD

One caveat is that though a BUS_SPACE_SYNC_WB was requested, a platform can 
perform BUS_SPACE_SYNC_WBINV instead.  If the platform can't support just 
writeback, it is allowed to silently do a writeback-invalidate instead.


Home | Main Index | Thread Index | Old Index