summaryrefslogtreecommitdiff
path: root/src/target/cortex_a8.c
diff options
context:
space:
mode:
authorDavid Brownell <dbrownell@users.sourceforge.net>2009-11-15 10:35:25 -0800
committerDavid Brownell <dbrownell@users.sourceforge.net>2009-11-15 10:35:25 -0800
commit9ac7cdec82c19481b79f2effcefb7106dd7ade41 (patch)
tree6252be3bf24ee465b2ec9e67dd497b87ada25080 /src/target/cortex_a8.c
parentf30136603e4cc8b2db0112a32f26959d5201e58c (diff)
downloadopenocd+libswd-9ac7cdec82c19481b79f2effcefb7106dd7ade41.tar.gz
openocd+libswd-9ac7cdec82c19481b79f2effcefb7106dd7ade41.tar.bz2
openocd+libswd-9ac7cdec82c19481b79f2effcefb7106dd7ade41.tar.xz
openocd+libswd-9ac7cdec82c19481b79f2effcefb7106dd7ade41.zip
target: make "examined" flag be per-target
Previously this flag was stored in "target_type", so that for example if there were two ARM7TDMI targets in a scan chain, both would claim to have been examined although only the first one actually had its examine() method called. Move this state to where it should have been in the first place, and hide a method that didn't need exposure ... the flag is write-once. Provide some doxygen. The examine() method is confusing, since it isn't separating one-time setup from the after-each-reset stuff. And the ARM7/ARM9 version is, somewhat undesirably, not leaving the debug state alone after reset ... probably more of an issue for trace setup than for watchpoints and breakpoints. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Diffstat (limited to 'src/target/cortex_a8.c')
-rw-r--r--src/target/cortex_a8.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/target/cortex_a8.c b/src/target/cortex_a8.c
index 730cd33e..da5e84be 100644
--- a/src/target/cortex_a8.c
+++ b/src/target/cortex_a8.c
@@ -1297,11 +1297,11 @@ static int cortex_a8_dcc_read(struct swjdp_common *swjdp, uint8_t *value, uint8_
static int cortex_a8_handle_target_request(void *priv)
{
struct target *target = priv;
- if (!target->type->examined)
- return ERROR_OK;
struct armv7a_common *armv7a = target_to_armv7a(target);
struct swjdp_common *swjdp = &armv7a->swjdp_info;
+ if (!target_was_examined(target))
+ return ERROR_OK;
if (!target->dbg_msg_enabled)
return ERROR_OK;
@@ -1424,7 +1424,7 @@ static int cortex_a8_examine(struct target *target)
/* Configure core debug access */
cortex_a8_init_debug_access(target);
- target->type->examined = 1;
+ target_set_examined(target);
return retval;
}