summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorØyvind Harboe <oyvind.harboe@zylin.com>2011-03-30 13:34:50 +0200
committerØyvind Harboe <oyvind.harboe@zylin.com>2011-03-31 09:30:48 +0200
commit8d338f3296d87f3b0aa40b6f60a0ca393e435b36 (patch)
treef1ce81faac68ddf57e15a4bef9aa54cd112969de /src
parentb75bdb7b0428add602c2e4beb7e059da5d4a6c95 (diff)
downloadopenocd_libswd-8d338f3296d87f3b0aa40b6f60a0ca393e435b36.tar.gz
openocd_libswd-8d338f3296d87f3b0aa40b6f60a0ca393e435b36.tar.bz2
openocd_libswd-8d338f3296d87f3b0aa40b6f60a0ca393e435b36.tar.xz
openocd_libswd-8d338f3296d87f3b0aa40b6f60a0ca393e435b36.zip
cortex-a: use -dbgbase option
Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
Diffstat (limited to 'src')
-rw-r--r--src/target/cortex_a.c17
1 files changed, 12 insertions, 5 deletions
diff --git a/src/target/cortex_a.c b/src/target/cortex_a.c
index 82f719ad..5ff6bacb 100644
--- a/src/target/cortex_a.c
+++ b/src/target/cortex_a.c
@@ -1861,7 +1861,7 @@ static int cortex_a8_examine_first(struct target *target)
int i;
int retval = ERROR_OK;
uint32_t didr, ctypr, ttypr, cpuid;
- uint32_t dbgbase, apid;
+ uint32_t dbgbase;
/* We do one extra read to ensure DAP is configured,
* we call ahbap_debugport_init(swjdp) instead
@@ -1870,10 +1870,17 @@ static int cortex_a8_examine_first(struct target *target)
if (retval != ERROR_OK)
return retval;
- /* Get ROM Table base */
- retval = dap_get_debugbase(swjdp, 1, &dbgbase, &apid);
- if (retval != ERROR_OK)
- return retval;
+ if (!target->dbgbase_set)
+ {
+ /* Get ROM Table base */
+ uint32_t apid;
+ retval = dap_get_debugbase(swjdp, 1, &dbgbase, &apid);
+ if (retval != ERROR_OK)
+ return retval;
+ } else
+ {
+ dbgbase = target->dbgbase;
+ }
/* Lookup 0x15 -- Processor DAP */
retval = dap_lookup_cs_component(swjdp, 1, dbgbase, 0x15,