From f609d03f1fc0b722584f624fe25b04efd362ef00 Mon Sep 17 00:00:00 2001 From: Luca Ellero Date: Sat, 12 Feb 2011 11:54:38 +0000 Subject: cortex_a9: check target halted on APB read/write memory Signed-off-by: Luca Ellero --- src/target/cortex_a9.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/target') diff --git a/src/target/cortex_a9.c b/src/target/cortex_a9.c index c13d41c8..3ad7a7d3 100644 --- a/src/target/cortex_a9.c +++ b/src/target/cortex_a9.c @@ -1522,6 +1522,12 @@ static int cortex_a9_read_phys_memory(struct target *target, int nbytes = count * size; uint32_t data; + if (target->state != TARGET_HALTED) + { + LOG_WARNING("target not halted"); + return ERROR_TARGET_NOT_HALTED; + } + /* save registers r0 and r1, we are going to corrupt them */ retval = cortex_a9_dap_read_coreregister_u32(target, &saved_r0, 0); if (retval != ERROR_OK) @@ -1630,6 +1636,12 @@ static int cortex_a9_write_phys_memory(struct target *target, int nbytes = count * size; uint32_t data; + if (target->state != TARGET_HALTED) + { + LOG_WARNING("target not halted"); + return ERROR_TARGET_NOT_HALTED; + } + /* save registers r0 and r1, we are going to corrupt them */ retval = cortex_a9_dap_read_coreregister_u32(target, &saved_r0, 0); if (retval != ERROR_OK) -- cgit v1.2.3