summaryrefslogtreecommitdiff
path: root/src/target
diff options
context:
space:
mode:
authoroharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60>2008-10-13 12:16:44 +0000
committeroharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60>2008-10-13 12:16:44 +0000
commitb6caf057eb1a6dc3d7f858fec987f9ce825efb1f (patch)
tree565959c6f3ae177565e8343fa34af57ed16e8a9e /src/target
parentf7458c6b19e93d5e3d40ba58f38752f434a7729b (diff)
downloadopenocd+libswd-b6caf057eb1a6dc3d7f858fec987f9ce825efb1f.tar.gz
openocd+libswd-b6caf057eb1a6dc3d7f858fec987f9ce825efb1f.tar.bz2
openocd+libswd-b6caf057eb1a6dc3d7f858fec987f9ce825efb1f.tar.xz
openocd+libswd-b6caf057eb1a6dc3d7f858fec987f9ce825efb1f.zip
fix crash when connecting GDB to powered down target
git-svn-id: svn://svn.berlios.de/openocd/trunk@1044 b42882b7-edfa-0310-969c-e2dbd0fdcd60
Diffstat (limited to 'src/target')
-rw-r--r--src/target/arm11.c3
-rw-r--r--src/target/arm11.h12
2 files changed, 8 insertions, 7 deletions
diff --git a/src/target/arm11.c b/src/target/arm11.c
index 751c6425..384b9d06 100644
--- a/src/target/arm11.c
+++ b/src/target/arm11.c
@@ -1642,7 +1642,7 @@ int arm11_set_reg(reg_t *reg, u8 *buf)
return ERROR_OK;
}
-void arm11_build_reg_cache(target_t *target)
+int arm11_build_reg_cache(target_t *target)
{
arm11_common_t *arm11 = target->arch_info;
@@ -1700,6 +1700,7 @@ void arm11_build_reg_cache(target_t *target)
rs->def_index = i;
rs->target = target;
}
+ return ERROR_OK;
}
int arm11_handle_bool(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc, bool * var, char * name)
diff --git a/src/target/arm11.h b/src/target/arm11.h
index e685f0e0..35b577ce 100644
--- a/src/target/arm11.h
+++ b/src/target/arm11.h
@@ -77,7 +77,7 @@ typedef struct arm11_common_s
size_t brp; /**< Number of Breakpoint Register Pairs from DIDR */
size_t wrp; /**< Number of Watchpoint Register Pairs from DIDR */
-
+
enum arm11_debug_version
debug_version; /**< ARM debug architecture from DIDR */
/*@}*/
@@ -109,8 +109,8 @@ typedef struct arm11_common_s
/**
- * ARM11 DBGTAP instructions
- *
+ * ARM11 DBGTAP instructions
+ *
* http://infocenter.arm.com/help/topic/com.arm.doc.ddi0301f/I1006229.html
*/
enum arm11_instructions
@@ -191,7 +191,7 @@ int arm11_soft_reset_halt(struct target_s *target);
/* target register access for gdb */
int arm11_get_gdb_reg_list(struct target_s *target, struct reg_s **reg_list[], int *reg_list_size);
-/* target memory access
+/* target memory access
* size: 1 = byte (8bit), 2 = half-word (16bit), 4 = word (32bit)
* count: number of items of <size>
*/
@@ -203,7 +203,7 @@ int arm11_bulk_write_memory(struct target_s *target, u32 address, u32 count, u8
int arm11_checksum_memory(struct target_s *target, u32 address, u32 count, u32* checksum);
-/* target break-/watchpoint control
+/* target break-/watchpoint control
* rw: 0 = write, 1 = read, 2 = access
*/
int arm11_add_breakpoint(struct target_s *target, breakpoint_t *breakpoint);
@@ -220,7 +220,7 @@ int arm11_init_target(struct command_context_s *cmd_ctx, struct target_s *target
int arm11_quit(void);
/* helpers */
-void arm11_build_reg_cache(target_t *target);
+int arm11_build_reg_cache(target_t *target);
int arm11_set_reg(reg_t *reg, u8 *buf);
int arm11_get_reg(reg_t *reg);