cp15: use clean & invalidate instead of clean only
authorSebastian Wicki <swicki@student.ethz.ch>
Wed, 5 Feb 2014 22:21:24 +0000 (23:21 +0100)
committerSebastian Wicki <swicki@student.ethz.ch>
Wed, 5 Feb 2014 22:21:24 +0000 (23:21 +0100)
commit5f3304d5c0abf946fe47cd59901ca5e34d2e1e76
tree582dcaca2e07a0d94604c81e37fe674714ba2ab9
parent0d0727072557f24bd66686e37dc8ddbda328cf15
cp15: use clean & invalidate instead of clean only

The current implementation of cp15_invalidate_d_cache() only cleans
the cache, which means that dirty cache lines are written back to
memory. However, cache lines which were modified in memory, for
example by a DMA engine, are not re-read.

This change uses the clean & invalidate operation, which means that
the cache lines are cleaned and invalidated: All dirty cache lines
are written back to memory, all other other cache lines are marked
as invalid until they are re-read from memory.
kernel/arch/armv7/cp15.S