arm: error propagation of arm_jtag_set_instr
[fw/openocd] / src / target / arm7tdmi.c
index 2d6d68f61a9340c3026bbba655e46971db3cb96b..8befe2bf9a1d73d7ce1a5f1182faf3f2f194e0e6 100644 (file)
@@ -56,8 +56,6 @@ static int arm7tdmi_examine_debug_reason(struct target *target)
                uint8_t databus[4];
                uint8_t breakpoint;
 
-               jtag_set_end_state(TAP_DRPAUSE);
-
                fields[0].num_bits = 1;
                fields[0].out_value = NULL;
                fields[0].in_value = &breakpoint;
@@ -66,11 +64,13 @@ static int arm7tdmi_examine_debug_reason(struct target *target)
                fields[1].out_value = NULL;
                fields[1].in_value = databus;
 
-               if ((retval = arm_jtag_scann(&arm7_9->jtag_info, 0x1)) != ERROR_OK)
+               if ((retval = arm_jtag_scann(&arm7_9->jtag_info, 0x1, TAP_DRPAUSE)) != ERROR_OK)
                {
                        return retval;
                }
-               arm_jtag_set_instr(&arm7_9->jtag_info, arm7_9->jtag_info.intest_instr, NULL);
+               retval = arm_jtag_set_instr(&arm7_9->jtag_info, arm7_9->jtag_info.intest_instr, NULL, TAP_DRPAUSE);
+               if (retval != ERROR_OK)
+                       return retval;
 
                jtag_add_dr_scan(arm7_9->jtag_info.tap, 2, fields, TAP_DRPAUSE);
                if ((retval = jtag_execute_queue()) != ERROR_OK)
@@ -104,9 +104,9 @@ static __inline int arm7tdmi_clock_out_inner(struct arm_jtag *jtag_info, uint32_
                        2,
                        arm7tdmi_num_bits,
                        values,
-                       jtag_get_end_state());
+                       TAP_DRPAUSE);
 
-       jtag_add_runtest(0, jtag_get_end_state());
+       jtag_add_runtest(0, TAP_DRPAUSE);
 
        return ERROR_OK;
 }
@@ -119,9 +119,11 @@ static __inline int arm7tdmi_clock_out_inner(struct arm_jtag *jtag_info, uint32_
 static __inline int arm7tdmi_clock_out(struct arm_jtag *jtag_info,
                uint32_t out, uint32_t *deprecated, int breakpoint)
 {
-       jtag_set_end_state(TAP_DRPAUSE);
-       arm_jtag_scann(jtag_info, 0x1);
-       arm_jtag_set_instr(jtag_info, jtag_info->intest_instr, NULL);
+       int retval;
+       arm_jtag_scann(jtag_info, 0x1, TAP_DRPAUSE);
+       retval = arm_jtag_set_instr(jtag_info, jtag_info->intest_instr, NULL, TAP_DRPAUSE);
+       if (retval != ERROR_OK)
+               return retval;
 
        return arm7tdmi_clock_out_inner(jtag_info, out, breakpoint);
 }
@@ -132,12 +134,13 @@ static int arm7tdmi_clock_data_in(struct arm_jtag *jtag_info, uint32_t *in)
        int retval = ERROR_OK;
        struct scan_field fields[2];
 
-       jtag_set_end_state(TAP_DRPAUSE);
-       if ((retval = arm_jtag_scann(jtag_info, 0x1)) != ERROR_OK)
+       if ((retval = arm_jtag_scann(jtag_info, 0x1, TAP_DRPAUSE)) != ERROR_OK)
        {
                return retval;
        }
-       arm_jtag_set_instr(jtag_info, jtag_info->intest_instr, NULL);
+       retval = arm_jtag_set_instr(jtag_info, jtag_info->intest_instr, NULL, TAP_DRPAUSE);
+       if (retval != ERROR_OK)
+               return retval;
 
        fields[0].num_bits = 1;
        fields[0].out_value = NULL;
@@ -217,12 +220,13 @@ static int arm7tdmi_clock_data_in_endianness(struct arm_jtag *jtag_info,
        int retval = ERROR_OK;
        struct scan_field fields[2];
 
-       jtag_set_end_state(TAP_DRPAUSE);
-       if ((retval = arm_jtag_scann(jtag_info, 0x1)) != ERROR_OK)
+       if ((retval = arm_jtag_scann(jtag_info, 0x1, TAP_DRPAUSE)) != ERROR_OK)
        {
                return retval;
        }
-       arm_jtag_set_instr(jtag_info, jtag_info->intest_instr, NULL);
+       retval = arm_jtag_set_instr(jtag_info, jtag_info->intest_instr, NULL, TAP_DRPAUSE);
+       if (retval != ERROR_OK)
+               return retval;
 
        fields[0].num_bits = 1;
        fields[0].out_value = NULL;