]> git.sur5r.net Git - openocd/blobdiff - src/target/arm9tdmi.c
ADIv5 clean up AP selection and register caching
[openocd] / src / target / arm9tdmi.c
index 823e962ed0be22f618567594d5b3fdcfd8af1d46..77b01b16052d420a5af8567487a812ce09b68a07 100644 (file)
@@ -677,7 +677,8 @@ static void arm9tdmi_branch_resume_thumb(struct target *target)
        /* fetch NOP, LDM in EXECUTE stage (1st cycle) */
        arm9tdmi_clock_out(jtag_info, ARMV4_5_NOP, 0, NULL, 0);
        /* nothing fetched, LDM in EXECUTE stage (2nd cycle) */
-       arm9tdmi_clock_out(jtag_info, ARMV4_5_NOP, buf_get_u32(armv4_5->core_cache->reg_list[15].value, 0, 32) | 1, NULL, 0);
+       arm9tdmi_clock_out(jtag_info, ARMV4_5_NOP,
+                       buf_get_u32(armv4_5->pc->value, 0, 32) | 1, NULL, 0);
        /* nothing fetched, LDM in EXECUTE stage (3rd cycle) */
        arm9tdmi_clock_out(jtag_info, ARMV4_5_NOP, 0, NULL, 0);
 
@@ -975,4 +976,5 @@ struct target_type arm9tdmi_target =
        .target_create = arm9tdmi_target_create,
        .init_target = arm9tdmi_init_target,
        .examine = arm7_9_examine,
+       .check_reset = arm7_9_check_reset,
 };