This is an automated email from Gerrit.

Forest Crossman ([email protected]) just uploaded a new patch set to Gerrit, 
which you can find at http://openocd.zylin.com/2748

-- gerrit

commit 285f7c8828f1f3c70d093b93727a733b81392449
Author: Forest Crossman <[email protected]>
Date:   Tue Apr 28 01:28:04 2015 -0400

    jtag/drivers/jlink: add support for STABLECLOCKS
    
    Change-Id: I7308c5f0eb5234a57fa94cd7a3e3bec90ee0bb2a
    Signed-off-by: Forest Crossman <[email protected]>

diff --git a/src/jtag/drivers/jlink.c b/src/jtag/drivers/jlink.c
index 0d58796..13b5efc 100644
--- a/src/jtag/drivers/jlink.c
+++ b/src/jtag/drivers/jlink.c
@@ -353,6 +353,28 @@ static void jlink_execute_sleep(struct jtag_command *cmd)
        jtag_sleep(cmd->cmd.sleep->us);
 }
 
+static void jlink_execute_stableclocks(struct jtag_command *cmd)
+{
+       /* this is only allowed while in a stable state.  A check for a stable
+        * state was done in jtag_add_clocks()
+        */
+       int num_cycles = cmd->cmd.stableclocks->num_cycles;
+
+       /* TMS is either held high or low. */
+       uint8_t tms = tap_get_state() == TAP_RESET ? 1 : 0;
+
+       while (num_cycles > 0) {
+               /* there are no state transitions in this code, so omit state 
tracking */
+               unsigned this_len = num_cycles > 7 ? 7 : num_cycles;
+               jlink_tap_append_step(tms, 0);
+               num_cycles -= this_len;
+       }
+
+       DEBUG_JTAG_IO("clocks %i while in %s",
+               cmd->cmd.stableclocks->num_cycles,
+               tap_state_name(tap_get_state()));
+}
+
 static void jlink_execute_command(struct jtag_command *cmd)
 {
        switch (cmd->type) {
@@ -374,6 +396,9 @@ static void jlink_execute_command(struct jtag_command *cmd)
                case JTAG_SLEEP:
                        jlink_execute_sleep(cmd);
                        break;
+               case JTAG_STABLECLOCKS:
+                       jlink_execute_stableclocks(cmd);
+                       break;
                default:
                        LOG_ERROR("BUG: unknown JTAG command type encountered");
                        exit(-1);

-- 

------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
OpenOCD-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openocd-devel

Reply via email to