cortex_a: rework mmu manipulation
authorMatthias Welwarsky <matthias@welwarsky.de>
Thu, 19 Nov 2015 21:09:49 +0000 (22:09 +0100)
committerPaul Fertser <fercerpav@gmail.com>
Mon, 30 Nov 2015 10:07:33 +0000 (10:07 +0000)
commit3683f8cef09f389ed840f2dbef5bd1749b60a16f
treeb06de9ecedf7ef0a44a9afcca97b3fe6367cd32c
parent442e2506b1d535c9420a29066f5d9c8fb11de35a
cortex_a: rework mmu manipulation

when disabling the mmu to access physical addresses, normally the d-cache
must be disabled as well. Disabling the d-cache also requires a full
clean&invalidate. However, since all memory writes are treated as write-
through no-allocate and memory reads do not allocate cache lines,
effectively the d-cache state does not change at all. We can therefore
save the the d-cache disabling and flushing.

This patch also simplifies the function a bit.

Change-Id: Ia17c56a28f432156429cd4596107e3652b788e63
Signed-off-by: Matthias Welwarsky <matthias@welwarsky.de>
Reviewed-on: http://openocd.zylin.com/3114
Tested-by: jenkins
Reviewed-by: Paul Fertser <fercerpav@gmail.com>
src/target/cortex_a.c