summaryrefslogtreecommitdiff
path: root/src/target/cortex_m3.h
diff options
context:
space:
mode:
authorSpencer Oliver <ntfreak@users.sourceforge.net>2010-08-25 20:29:22 +0100
committerSpencer Oliver <ntfreak@users.sourceforge.net>2010-08-31 20:09:26 +0100
commit3c69eee9ef481333eb08e72badc9404e607f861c (patch)
tree28b7bcb6f0673819a83856781f9dcc38127ac7a4 /src/target/cortex_m3.h
parent1ca286557a7b41211cae7026c99d41af031af177 (diff)
downloadopenocd+libswd-3c69eee9ef481333eb08e72badc9404e607f861c.tar.gz
openocd+libswd-3c69eee9ef481333eb08e72badc9404e607f861c.tar.bz2
openocd+libswd-3c69eee9ef481333eb08e72badc9404e607f861c.tar.xz
openocd+libswd-3c69eee9ef481333eb08e72badc9404e607f861c.zip
cortex m3: add cortex_m3 reset_config cmd
This new cmd adds the ability to choose the Cortex-M3 reset method used. It defaults to using SRST for reset if available otherwise it falls back to using NVIC VECTRESET. This is known to work on all cores. Move any luminary specific reset handling to the stellaris cfg file. Signed-off-by: Spencer Oliver <ntfreak@users.sourceforge.net>
Diffstat (limited to 'src/target/cortex_m3.h')
-rw-r--r--src/target/cortex_m3.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/target/cortex_m3.h b/src/target/cortex_m3.h
index 7ce89014..db807111 100644
--- a/src/target/cortex_m3.h
+++ b/src/target/cortex_m3.h
@@ -134,6 +134,13 @@ struct cortex_m3_dwt_comparator
uint32_t dwt_comparator_address;
};
+enum cortex_m3_soft_reset_config
+{
+ CORTEX_M3_RESET_SRST,
+ CORTEX_M3_RESET_SYSRESETREQ,
+ CORTEX_M3_RESET_VECTRESET,
+};
+
struct cortex_m3_common
{
int common_magic;
@@ -158,6 +165,8 @@ struct cortex_m3_common
struct cortex_m3_dwt_comparator *dwt_comparator_list;
struct reg_cache *dwt_cache;
+ enum cortex_m3_soft_reset_config soft_reset_config;
+
struct armv7m_common armv7m;
};