summaryrefslogtreecommitdiff
path: root/src/target/arm9tdmi.c
diff options
context:
space:
mode:
authordrath <drath@b42882b7-edfa-0310-969c-e2dbd0fdcd60>2006-08-06 11:20:42 +0000
committerdrath <drath@b42882b7-edfa-0310-969c-e2dbd0fdcd60>2006-08-06 11:20:42 +0000
commitfbf5bec7f3ea9f4a9584099a12e71681cb55ce35 (patch)
tree576fd656bbf5ba38fc42fbc99109a5082eed6887 /src/target/arm9tdmi.c
parent7d244761461701e1161df32c2f1d4cd50ae2bb26 (diff)
downloadopenocd_libswd-fbf5bec7f3ea9f4a9584099a12e71681cb55ce35.tar.gz
openocd_libswd-fbf5bec7f3ea9f4a9584099a12e71681cb55ce35.tar.bz2
openocd_libswd-fbf5bec7f3ea9f4a9584099a12e71681cb55ce35.tar.xz
openocd_libswd-fbf5bec7f3ea9f4a9584099a12e71681cb55ce35.zip
- fixed a minor problem with the GDB server that could drop the first packet (non-fatal)
- fixed some small memory leaks (thanks to Spencer Oliver) - verify chip- and buswidth of cfi flash configurations - added support for ARM966E based systems (tested only with ST micro STR9, thanks to Spencer Oliver) git-svn-id: svn://svn.berlios.de/openocd/trunk@81 b42882b7-edfa-0310-969c-e2dbd0fdcd60
Diffstat (limited to 'src/target/arm9tdmi.c')
-rw-r--r--src/target/arm9tdmi.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/target/arm9tdmi.c b/src/target/arm9tdmi.c
index 04ea676b..be01dd60 100644
--- a/src/target/arm9tdmi.c
+++ b/src/target/arm9tdmi.c
@@ -719,11 +719,11 @@ void arm9tdmi_build_reg_cache(target_t *target)
arm7_9->eice_cache = (*cache_p)->next;
if (arm9tdmi->has_monitor_mode)
- (*cache_p)->next->reg_list[0].size = 6;
+ (*cache_p)->next->reg_list[EICE_DBG_CTRL].size = 6;
else
- (*cache_p)->next->reg_list[0].size = 4;
+ (*cache_p)->next->reg_list[EICE_DBG_CTRL].size = 4;
- (*cache_p)->next->reg_list[1].size = 5;
+ (*cache_p)->next->reg_list[EICE_DBG_STAT].size = 5;
}
@@ -808,7 +808,10 @@ int arm9tdmi_init_arch_info(target_t *target, arm9tdmi_common_t *arm9tdmi, int c
arm9tdmi->has_single_step = 1;
else if (strcmp(variant, "arm940t") == 0)
arm9tdmi->has_single_step = 1;
+ arm9tdmi->variant = strdup(variant);
}
+ else
+ arm9tdmi->variant = strdup("");
arm7_9_init_arch_info(target, arm7_9);
@@ -831,7 +834,7 @@ int arm9tdmi_target_command(struct command_context_s *cmd_ctx, char *cmd, char *
chain_pos = strtoul(args[3], NULL, 0);
if (argc >= 5)
- variant = strdup(args[4]);
+ variant = args[4];
arm9tdmi_init_arch_info(target, arm9tdmi, chain_pos, variant);