With the recent changes the TRST needs to happen for every reset.
authoroharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60>
Tue, 11 Mar 2008 21:18:44 +0000 (21:18 +0000)
committeroharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60>
Tue, 11 Mar 2008 21:18:44 +0000 (21:18 +0000)
git-svn-id: svn://svn.berlios.de/openocd/trunk@498 b42882b7-edfa-0310-969c-e2dbd0fdcd60

src/target/xscale.c

index 921af812b9591d77dafe6bd893b5172cbe7fe4d1..c93f1ff297b1fa654027797b57388a14cb6f6b98 100644 (file)
@@ -1585,6 +1585,15 @@ int xscale_assert_reset(target_t *target)
 
        DEBUG("target->state: %s", target_state_strings[target->state]);
 
+       /* TRST every time. We want to be able to support daemon_startup attach */
+       jtag_add_reset(1, 0);
+       jtag_add_sleep(5000);
+       jtag_add_reset(0, 0);
+       jtag_add_sleep(5000);
+       jtag_execute_queue();
+
+       
+       
        /* select DCSR instruction (set endstate to R-T-I to ensure we don't
         * end up in T-L-R, which would reset JTAG
         */
@@ -3021,18 +3030,6 @@ void xscale_build_reg_cache(target_t *target)
 
 int xscale_init_target(struct command_context_s *cmd_ctx, struct target_s *target)
 {
-       if (startup_mode != DAEMON_RESET)
-       {
-               ERROR("XScale target requires a reset");
-               ERROR("Reset target to enable debug");
-       }
-
-       /* assert TRST once during startup */
-       jtag_add_reset(1, 0);
-       jtag_add_sleep(5000);
-       jtag_add_reset(0, 0);
-       jtag_execute_queue();
-
        return ERROR_OK;
 }