Now that we have this DPM component, it can (and IMO should!) handle
more of the cases where the ARMv6 and ARMv7 code have needlessly
unique implementations. This patch addresses coprocessor stuff:
- stop using read_cp15/write_cp15 methods in
* armv7a.c
* cortex_a8.c
- add and use DPM support for coprocessors
* dpm.c ... makes other implementations become dead
* arm11.c ... remove
* cortex_a8.c ... remove
It's basically cleanup (see diffstat) but also there's a bit of
speedup since the DPM ops let code be removed: instead of
N * { prepare, access, finish }
it's now
prepare, N * access, finish
which clearly wins whenever more than one coprocessor register
needs to be read or written (like cacheflush).
- Dave
src/target/arm11.c | 68 --------------------
src/target/arm_dpm.c | 55 ++++++++++++++++
src/target/armv7a.c | 39 ++++++++++-
src/target/armv7a.h | 7 --
src/target/cortex_a8.c | 166 +++++++++++++++----------------------------------
5 files changed, 144 insertions(+), 191 deletions(-)
_______________________________________________
Openocd-development mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/openocd-development