arm_jtag_scann error propagation fixes
authorØyvind Harboe <oyvind.harboe@zylin.com>
Tue, 20 Jul 2010 06:23:59 +0000 (08:23 +0200)
committerØyvind Harboe <oyvind.harboe@zylin.com>
Tue, 20 Jul 2010 06:24:53 +0000 (08:24 +0200)
Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
src/target/arm7tdmi.c
src/target/arm920t.c
src/target/embeddedice.c
src/target/etm.c
src/target/feroceon.c

index 8befe2bf9a1d73d7ce1a5f1182faf3f2f194e0e6..f4ba44ac132ea55091a04880bbd977a0d02c5584 100644 (file)
@@ -120,7 +120,9 @@ static __inline int arm7tdmi_clock_out(struct arm_jtag *jtag_info,
                uint32_t out, uint32_t *deprecated, int breakpoint)
 {
        int retval;
-       arm_jtag_scann(jtag_info, 0x1, TAP_DRPAUSE);
+       retval = arm_jtag_scann(jtag_info, 0x1, TAP_DRPAUSE);
+       if (retval != ERROR_OK)
+               return retval;
        retval = arm_jtag_set_instr(jtag_info, jtag_info->intest_instr, NULL, TAP_DRPAUSE);
        if (retval != ERROR_OK)
                return retval;
index c5064c1126d4058540c0259818fdd71d85e81936..90f548f38f0fbf6ee9d14a929ed037c1824478cb 100644 (file)
@@ -93,7 +93,9 @@ static int arm920t_read_cp15_physical(struct target *target,
 
        jtag_info = &arm920t->arm7_9_common.jtag_info;
 
-       arm_jtag_scann(jtag_info, 0xf, TAP_IDLE);
+       retval = arm_jtag_scann(jtag_info, 0xf, TAP_IDLE);
+       if (retval != ERROR_OK)
+               return retval;
        retval = arm_jtag_set_instr(jtag_info, jtag_info->intest_instr, NULL, TAP_IDLE);
        if (retval != ERROR_OK)
                return retval;
@@ -146,7 +148,9 @@ static int arm920t_write_cp15_physical(struct target *target,
 
        buf_set_u32(value_buf, 0, 32, value);
 
-       arm_jtag_scann(jtag_info, 0xf, TAP_IDLE);
+       retval = arm_jtag_scann(jtag_info, 0xf, TAP_IDLE);
+       if (retval != ERROR_OK)
+               return retval;
        retval = arm_jtag_set_instr(jtag_info, jtag_info->intest_instr, NULL, TAP_IDLE);
        if (retval != ERROR_OK)
                return retval;
@@ -197,7 +201,9 @@ static int arm920t_execute_cp15(struct target *target, uint32_t cp15_opcode,
 
        jtag_info = &arm920t->arm7_9_common.jtag_info;
 
-       arm_jtag_scann(jtag_info, 0xf, TAP_IDLE);
+       retval = arm_jtag_scann(jtag_info, 0xf, TAP_IDLE);
+       if (retval != ERROR_OK)
+               return retval;
        retval = arm_jtag_set_instr(jtag_info, jtag_info->intest_instr, NULL, TAP_IDLE);
        if (retval != ERROR_OK)
                return retval;
index 965260ca3f065060233b38ebd3cc8b91948debaa..abc49d7e6f729302db93f454f3e9e44de5420eaa 100644 (file)
@@ -346,7 +346,9 @@ int embeddedice_read_reg_w_check(struct reg *reg,
        uint8_t field2_out[1];
        int retval;
 
-       arm_jtag_scann(ice_reg->jtag_info, 0x2, TAP_IDLE);
+       retval = arm_jtag_scann(ice_reg->jtag_info, 0x2, TAP_IDLE);
+       if (retval != ERROR_OK)
+               return retval;
 
        retval = arm_jtag_set_instr(ice_reg->jtag_info, ice_reg->jtag_info->intest_instr, NULL, TAP_IDLE);
        if (retval != ERROR_OK)
@@ -410,7 +412,9 @@ int embeddedice_receive(struct arm_jtag *jtag_info, uint32_t *data, uint32_t siz
        uint8_t field2_out[1];
        int retval;
 
-       arm_jtag_scann(jtag_info, 0x2, TAP_IDLE);
+       retval = arm_jtag_scann(jtag_info, 0x2, TAP_IDLE);
+       if (retval != ERROR_OK)
+               return retval;
        retval = arm_jtag_set_instr(jtag_info, jtag_info->intest_instr, NULL, TAP_IDLE);
        if (retval != ERROR_OK)
                return retval;
@@ -497,7 +501,7 @@ void embeddedice_write_reg(struct reg *reg, uint32_t value)
 
        LOG_DEBUG("%i: 0x%8.8" PRIx32 "", ice_reg->addr, value);
 
-       arm_jtag_scann(ice_reg->jtag_info, 0x2, TAP_IDLE);
+       retval = arm_jtag_scann(ice_reg->jtag_info, 0x2, TAP_IDLE);
 
        retval = arm_jtag_set_instr(ice_reg->jtag_info, ice_reg->jtag_info->intest_instr, NULL, TAP_IDLE);
 
@@ -530,7 +534,9 @@ int embeddedice_send(struct arm_jtag *jtag_info, uint32_t *data, uint32_t size)
        uint8_t field2_out[1];
        int retval;
 
-       arm_jtag_scann(jtag_info, 0x2, TAP_IDLE);
+       retval = arm_jtag_scann(jtag_info, 0x2, TAP_IDLE);
+       if (retval != ERROR_OK)
+               return retval;
        retval = arm_jtag_set_instr(jtag_info, jtag_info->intest_instr, NULL, TAP_IDLE);
        if (retval != ERROR_OK)
                return retval;
@@ -584,7 +590,9 @@ int embeddedice_handshake(struct arm_jtag *jtag_info, int hsbit, uint32_t timeou
        else
                return ERROR_INVALID_ARGUMENTS;
 
-       arm_jtag_scann(jtag_info, 0x2, TAP_IDLE);
+       retval = arm_jtag_scann(jtag_info, 0x2, TAP_IDLE);
+       if (retval != ERROR_OK)
+               return retval;
        retval = arm_jtag_set_instr(jtag_info, jtag_info->intest_instr, NULL, TAP_IDLE);
        if (retval != ERROR_OK)
                return retval;
index 5c42fb59a8f75b98b1646c8cb33905a6a49a62b9..9da69550421df9b117ddb76c790dbdf2bee5dbda 100644 (file)
@@ -505,7 +505,9 @@ static int etm_read_reg_w_check(struct reg *reg,
 
        LOG_DEBUG("%s (%u)", r->name, reg_addr);
 
-       arm_jtag_scann(etm_reg->jtag_info, 0x6, TAP_IDLE);
+       retval = arm_jtag_scann(etm_reg->jtag_info, 0x6, TAP_IDLE);
+       if (retval != ERROR_OK)
+               return retval;
        retval = arm_jtag_set_instr(etm_reg->jtag_info, etm_reg->jtag_info->intest_instr, NULL, TAP_IDLE);
        if (retval != ERROR_OK)
                return retval;
@@ -589,7 +591,9 @@ static int etm_write_reg(struct reg *reg, uint32_t value)
 
        LOG_DEBUG("%s (%u): 0x%8.8" PRIx32 "", r->name, reg_addr, value);
 
-       arm_jtag_scann(etm_reg->jtag_info, 0x6, TAP_IDLE);
+       retval = arm_jtag_scann(etm_reg->jtag_info, 0x6, TAP_IDLE);
+       if (retval != ERROR_OK)
+               return retval;
        retval = arm_jtag_set_instr(etm_reg->jtag_info, etm_reg->jtag_info->intest_instr, NULL, TAP_IDLE);
        if (retval != ERROR_OK)
                return retval;
index 6ca432a8c66a1b44bea32369c0d1a8458dc6b4af..2152a260135f59b0f6ff7d3f30ba028e40e46529 100644 (file)
@@ -85,7 +85,9 @@ static int feroceon_dummy_clock_out(struct arm_jtag *jtag_info, uint32_t instr)
 
        buf_set_u32(instr_buf, 0, 32, flip_u32(instr, 32));
 
-       arm_jtag_scann(jtag_info, 0x1, TAP_DRPAUSE);
+       retval = arm_jtag_scann(jtag_info, 0x1, TAP_DRPAUSE);
+       if (retval != ERROR_OK)
+               return retval;
 
        retval = arm_jtag_set_instr(jtag_info, jtag_info->intest_instr, NULL, TAP_DRPAUSE);
        if (retval != ERROR_OK)