This is an automated email from Gerrit.

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

-- gerrit

commit da33db1a567fd3a613f09572323ee114d47c6e1f
Author: Alamy Liu <[email protected]>
Date:   Fri Aug 7 16:20:58 2015 -0700

    DBG: Debugging messages
    
    Change-Id: Ia14c5994ddfc0b48527afb498d30a67636f23137
    Signed-off-by: Alamy Liu <[email protected]>

diff --git a/src/jtag/core.c b/src/jtag/core.c
index fd4370f..a5b12e0 100644
--- a/src/jtag/core.c
+++ b/src/jtag/core.c
@@ -222,6 +222,9 @@ void jtag_tap_add(struct jtag_tap *t)
        }
        *tap = t;
        t->abs_chain_position = jtag_num_taps;
+
+LOG_DEBUG("Alamy: tap at %p, count=%d, enabled=%d",
+       t, t->abs_chain_position, t->enabled);
 }
 
 /* returns a pointer to the n-th device in the scan chain */
@@ -359,7 +362,9 @@ void jtag_add_ir_scan_noverify(struct jtag_tap *active, 
const struct scan_field
 {
        jtag_prelude(state);
 
+// jtag_dump_queue(__func__, __LINE__); --- after
        int retval = interface_jtag_add_ir_scan(active, in_fields, state);
+// jtag_dump_queue(__func__, __LINE__); --- before
        jtag_set_error(retval);
 }
 
@@ -424,8 +429,11 @@ static void jtag_add_scan_check(struct jtag_tap *active, 
void (*jtag_add_scan)(
                tap_state_t state),
        int in_num_fields, struct scan_field *in_fields, tap_state_t state)
 {
+// jtag_dump_queue(__func__, __LINE__); --- after
+//LOG_DEBUG("in_num_fields = %d", in_num_fields);
        jtag_add_scan(active, in_num_fields, in_fields, state);
 
+// jtag_dump_queue(__func__, __LINE__); --- before
        for (int i = 0; i < in_num_fields; i++) {
                if ((in_fields[i].check_value != NULL) && 
(in_fields[i].in_value != NULL)) {
                        /* this is synchronous for a minidriver */
@@ -866,6 +874,12 @@ int jtag_execute_queue(void)
        return jtag_error_clear();
 }
 
+extern void bitbang_dump_queue(const char *func, int line);
+void jtag_dump_queue(const char *func, int line)
+{
+       bitbang_dump_queue(func, line);
+}
+
 static int jtag_reset_callback(enum jtag_event event, void *priv)
 {
        struct jtag_tap *tap = priv;
@@ -1077,6 +1091,7 @@ static int jtag_examine_chain(void)
                assert(bit_count < max_taps * 32);
                uint32_t idcode = buf_get_u32(idcode_buffer, bit_count, 32);
 
+               LOG_DEBUG("tap %d/%d at %p, idcode=0x%08x", i, max_taps, tap, 
idcode);
                /* No predefined TAP? Auto-probe. */
                if (tap == NULL) {
                        /* Is there another TAP? */
@@ -1369,12 +1384,15 @@ int adapter_init(struct command_context *cmd_ctx)
        int requested_khz = jtag_get_speed_khz();
        int actual_khz = requested_khz;
        int jtag_speed_var = 0;
+LOG_DEBUG("req_khz=%d, act_khz=%d, jtag_spd=%d", requested_khz, actual_khz, 
jtag_speed_var);
        retval = jtag_get_speed(&jtag_speed_var);
        if (retval != ERROR_OK)
                return retval;
+LOG_DEBUG("req_khz=%d, act_khz=%d, jtag_spd=%d", requested_khz, actual_khz, 
jtag_speed_var);
        retval = jtag->speed(jtag_speed_var);
        if (retval != ERROR_OK)
                return retval;
+LOG_DEBUG("req_khz=%d, act_khz=%d, jtag_spd=%d", requested_khz, actual_khz, 
jtag_speed_var);
        retval = jtag_get_speed_readable(&actual_khz);
        if (ERROR_OK != retval)
                LOG_INFO("adapter-specific clock speed value %d", 
jtag_speed_var);
@@ -1389,6 +1407,7 @@ int adapter_init(struct command_context *cmd_ctx)
        } else
                LOG_INFO("RCLK (adaptive clock speed)");
 
+LOG_DEBUG("req_khz=%d, act_khz=%d, jtag_spd=%d", requested_khz, actual_khz, 
jtag_speed_var);
        return ERROR_OK;
 }
 
@@ -1597,10 +1616,11 @@ unsigned jtag_get_speed_khz(void)
 
 static int adapter_khz_to_speed(unsigned khz, int *speed)
 {
-       LOG_DEBUG("convert khz to interface specific speed value");
+       LOG_DEBUG("convert khz (%d) to interface specific speed value", khz);
        speed_khz = khz;
+       LOG_DEBUG("jtag interface %s set up", (jtag ? "has" : "not"));
        if (jtag != NULL) {
-               LOG_DEBUG("have interface set up");
+//             LOG_DEBUG("have interface set up");
                int speed_div1;
                int retval = jtag->khz(jtag_get_speed_khz(), &speed_div1);
                if (ERROR_OK != retval)
@@ -1630,7 +1650,7 @@ static int jtag_set_speed(int speed)
 
 int jtag_config_khz(unsigned khz)
 {
-       LOG_DEBUG("handle jtag khz");
+       LOG_DEBUG("handle adapter khz (%d)", khz);
        clock_mode = CLOCK_MODE_KHZ;
        int speed = 0;
        int retval = adapter_khz_to_speed(khz, &speed);
@@ -1639,7 +1659,7 @@ int jtag_config_khz(unsigned khz)
 
 int jtag_config_rclk(unsigned fallback_speed_khz)
 {
-       LOG_DEBUG("handle jtag rclk");
+       LOG_DEBUG("handle jtag rclk (%d)", fallback_speed_khz);
        clock_mode = CLOCK_MODE_RCLK;
        rclk_fallback_speed_khz = fallback_speed_khz;
        int speed = 0;
@@ -1728,6 +1748,7 @@ int jtag_get_srst(void)
 
 void jtag_set_nsrst_delay(unsigned delay)
 {
+       LOG_DEBUG("adapter_nsrst_delay = %d", delay);
        adapter_nsrst_delay = delay;
 }
 unsigned jtag_get_nsrst_delay(void)
@@ -1736,6 +1757,7 @@ unsigned jtag_get_nsrst_delay(void)
 }
 void jtag_set_ntrst_delay(unsigned delay)
 {
+       LOG_DEBUG("jtag_ntrst_delay = %d", delay);
        jtag_ntrst_delay = delay;
 }
 unsigned jtag_get_ntrst_delay(void)
diff --git a/src/jtag/drivers/bitbang.c b/src/jtag/drivers/bitbang.c
index 1a0fa1c..56eb9b6 100644
--- a/src/jtag/drivers/bitbang.c
+++ b/src/jtag/drivers/bitbang.c
@@ -243,6 +243,61 @@ static void bitbang_scan(bool ir_scan, enum scan_type 
type, uint8_t *buffer, int
        }
 }
 
+void bitbang_dump_queue(const char *func, int line)
+{
+       struct jtag_command *cmd = jtag_command_queue;  /* currently processed 
command */
+
+       LOG_DEBUG("----- command queue (begin) %s:%d -----", func, line);
+       while (cmd) {
+               switch (cmd->type) {
+                       case JTAG_SCAN: {
+                               struct scan_command *scmd;
+
+                               scmd = cmd->cmd.scan;
+
+                               LOG_DEBUG("JTAG_SCAN: %s scan end in %s, 
fields=%d",
+                                       (scmd->ir_scan) ? "IR" : "DR",
+                                       tap_state_name(scmd->end_state),
+                                       scmd->num_fields);
+#if 0
+                               for (int i = 0; i < scmd->num_fields; i++) {
+//                                     int cvrt_bits = 
(scmd->fields[i].num_bits > DEBUG_JTAG_IOZ)
+//                                             ? DEBUG_JTAG_IOZ : 
scmd->fields[i].num_bits;
+//                                     char *char_buf = 
buf_to_str(scmd->fields[i].out_value,
+//                                             cvrt_bits, 16);
+//                                     LOG_DEBUG("fields[%i].out_value[%i]: 
0x%x", i,
+//                                             scmd->fields[i].num_bits,
+//                                             *(scmd->fields[i].out_value));
+                                       uint8_t *pv = (uint8_t 
*)(scmd->fields[i].out_value);
+                                       LOG_DEBUG("fields[%d].out_value = 
0x%x", i, *pv);
+//                                     free(char_buf);
+                               }
+#endif
+                               break;
+                       }
+                       case JTAG_TLR_RESET:
+                               LOG_DEBUG("JTAG_TLR_RESET");            break;
+                       case JTAG_RUNTEST:
+                               LOG_DEBUG("JTAG_RUNTEST");              break;
+                       case JTAG_RESET:
+                               LOG_DEBUG("JTAG_RESET");                break;
+                       case JTAG_PATHMOVE:
+                               LOG_DEBUG("JTAG_PATHMOVE");             break;
+                       case JTAG_SLEEP:
+                               LOG_DEBUG("JTAG_SLEEP");                break;
+                       case JTAG_STABLECLOCKS:
+                               LOG_DEBUG("JTAG_STABLECLOCKS");         break;
+                       case JTAG_TMS:
+                               LOG_DEBUG("JTAG_TMS");                  break;
+                       default:
+                               LOG_DEBUG("JTAG_xxx = %d", cmd->type);  break;
+               } /* end of switch(cmd->type) */
+
+               cmd = cmd->next;
+       } /* end of while(cmd) */
+       LOG_DEBUG("----- command queue (end) -----");
+}
+
 int bitbang_execute_queue(void)
 {
        struct jtag_command *cmd = jtag_command_queue;  /* currently processed 
command */
diff --git a/src/jtag/drivers/driver.c b/src/jtag/drivers/driver.c
index 75ec115..a1881d8 100644
--- a/src/jtag/drivers/driver.c
+++ b/src/jtag/drivers/driver.c
@@ -98,12 +98,13 @@ int interface_jtag_add_ir_scan(struct jtag_tap *active,
 
        for (struct jtag_tap *tap = jtag_tap_next_enabled(NULL); tap != NULL; 
tap = jtag_tap_next_enabled(tap)) {
                /* search the input field list for fields for the current TAP */
-
+//LOG_DEBUG("tap at %p is %s", tap, (tap == active) ? "active" : "bypass");
                if (tap == active) {
                        /* if TAP is listed in input fields, copy the value */
                        tap->bypass = 0;
 
                        cmd_queue_scan_field_clone(field, in_fields);
+//LOG_DEBUG("out_value = 0x%x -> 0x%x", *(in_fields->out_value), 
*(field->out_value));
                } else {
                        /* if a TAP isn't listed in input fields, set it to 
BYPASS */
 
@@ -113,7 +114,6 @@ int interface_jtag_add_ir_scan(struct jtag_tap *active,
                        field->out_value = 
buf_set_ones(cmd_queue_alloc(DIV_ROUND_UP(tap->ir_length, 8)), tap->ir_length);
                        field->in_value = NULL; /* do not collect input for 
tap's in bypass */
                }
-
                /* update device information */
                buf_cpy(field->out_value, tap->cur_instr, tap->ir_length);
 
diff --git a/src/target/target.c b/src/target/target.c
index 6df8d8b..6256b68 100644
--- a/src/target/target.c
+++ b/src/target/target.c
@@ -723,6 +723,7 @@ int target_examine(void)
        int retval = ERROR_OK;
        struct target *target;
 
+//LOG_DEBUG("Alamy");
        for (target = all_targets; target; target = target->next) {
                /* defer examination, but don't skip it */
                if (!target->tap->enabled) {

-- 

------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
_______________________________________________
OpenOCD-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openocd-devel

Reply via email to