arm946e: don't use global variables for context
authorAlexander Osipenko <sipych@gmail.com>
Mon, 30 Jul 2012 23:50:09 +0000 (03:50 +0400)
committerFreddie Chopin <freddie.chopin@gmail.com>
Wed, 1 Aug 2012 21:16:37 +0000 (21:16 +0000)
commit9c9c06b8aee907c547e80b472be900d152dae490
treee23fb1fe6a7995a6dbc690144860a0c4ee667ac6
parentee8df96b2b064fd666e9a3aa8b8f03eb0f2bd75f
arm946e: don't use global variables for context

Global variables 'dc' 'ic' had been used in the code
to keep target's state of D-cache and I-cache
on debug entry.

This may lead to incorrect operation in configurations
with multiple cores and unequal cache states.

Fix: move cache state to the appropriate bits of the
'cp15_control_reg' field (already present but unused).
Vaule of cp15 control register stored here on
arm946e_post_debug_entry(), and analyzed later
in arm946e_write_memory().

Change-Id: I71ef82be00c21d6fffb3726cec4974d1ece70dfe
Signed-off-by: Alexander Osipenko <sipych@gmail.com>
Reviewed-on: http://openocd.zylin.com/692
Tested-by: jenkins
Reviewed-by: Freddie Chopin <freddie.chopin@gmail.com>
src/target/arm946e.c