Signed-off-by: Øyvind Harboe <oyvind.har...@zylin.com>
---
 src/target/cortex_a.c |   17 ++++++++++++-----
 1 files changed, 12 insertions(+), 5 deletions(-)

diff --git a/src/target/cortex_a.c b/src/target/cortex_a.c
index 82f719a..5ff6bac 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,
-- 
1.7.2.3

_______________________________________________
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to