This is an automated email from Gerrit.

"Mark O'Donovan <[email protected]>" just uploaded a new patch set to Gerrit, 
which you can find at https://review.openocd.org/c/openocd/+/9547

-- gerrit

commit 28b972bb156d0ddbb2ff0770788eab0c1318ec30
Author: Mark O'Donovan <[email protected]>
Date:   Sun Mar 29 12:47:17 2026 +0100

    target/dsp5680xx: remove err_check()
    
    Improve readability by dropping macros containing `return`
    
    Change-Id: Iccba4196d1d40405b596957aa53f18c106db1dc7
    Signed-off-by: Mark O'Donovan <[email protected]>

diff --git a/src/target/dsp5680xx.c b/src/target/dsp5680xx.c
index c65a3a0a11..f1ab61d0b0 100644
--- a/src/target/dsp5680xx.c
+++ b/src/target/dsp5680xx.c
@@ -20,7 +20,6 @@ static struct dsp5680xx_common dsp5680xx_context;
 
 #define _E "DSP5680XX_ERROR:%d\nAt:%s:%d:%s"
 #define err_log(c, m) LOG_ERROR(_E, c, __func__, __LINE__, m)
-#define err_check(r, c, m) if (r != ERROR_OK) {LOG_ERROR(_E, c, __func__, 
__LINE__, m); return r; }
 #define DEBUG_MSG "Debug mode be enabled to read mem."
 #define HALT_MSG "Target must be halted."
 
@@ -72,14 +71,13 @@ static int dsp5680xx_drscan(struct target *target, uint8_t 
*d_in,
        int retval = ERROR_OK;
 
        if (!target->tap) {
-               retval = ERROR_FAIL;
-               err_check(retval, DSP5680XX_ERROR_JTAG_INVALID_TAP,
-                         "Invalid tap");
+               err_log(DSP5680XX_ERROR_JTAG_INVALID_TAP, "Invalid tap");
+               return ERROR_FAIL;
        }
        if (len > 32) {
-               retval = ERROR_FAIL;
-               err_check(retval, DSP5680XX_ERROR_JTAG_DR_LEN_OVERFLOW,
+               err_log(DSP5680XX_ERROR_JTAG_DR_LEN_OVERFLOW,
                          "dr_len overflow, maximum is 32");
+               return ERROR_FAIL;
        }
        /* TODO what values of len are valid for jtag_add_plain_dr_scan? */
        /* can i send as many bits as i want? */
@@ -87,8 +85,10 @@ static int dsp5680xx_drscan(struct target *target, uint8_t 
*d_in,
        jtag_add_plain_dr_scan(len, d_in, d_out, TAP_IDLE);
        if (dsp5680xx_context.flush) {
                retval = dsp5680xx_execute_queue();
-               err_check(retval, DSP5680XX_ERROR_JTAG_DRSCAN,
-                         "drscan failed!");
+               if (retval != ERROR_OK) {
+                       err_log(DSP5680XX_ERROR_JTAG_DRSCAN, "drscan failed!");
+                       return retval;
+               }
        }
        if (d_out)
                LOG_DEBUG("Data read (%d bits): 0x%04X", len, *d_out);
@@ -119,18 +119,15 @@ static int dsp5680xx_irscan(struct target *target, 
uint32_t *d_in,
        }
        if (ir_len != target->tap->ir_length) {
                if (target->tap->enabled) {
-                       retval = ERROR_FAIL;
-                       err_check(retval, DSP5680XX_ERROR_INVALID_IR_LEN,
-                                 "Invalid irlen");
+                       err_log(DSP5680XX_ERROR_INVALID_IR_LEN, "Invalid 
irlen");
+                       return ERROR_FAIL;
                } else {
                        struct jtag_tap *t =
                                jtag_tap_by_string("dsp568013.chp");
                        if ((!t)
                            || ((t->enabled) && (ir_len != tap_ir_len))) {
-                               retval = ERROR_FAIL;
-                               err_check(retval,
-                                         DSP5680XX_ERROR_INVALID_IR_LEN,
-                                         "Invalid irlen");
+                               err_log(DSP5680XX_ERROR_INVALID_IR_LEN, 
"Invalid irlen");
+                               return ERROR_FAIL;
                        }
                }
        }
@@ -138,8 +135,10 @@ static int dsp5680xx_irscan(struct target *target, 
uint32_t *d_in,
                               TAP_IDLE);
        if (dsp5680xx_context.flush) {
                retval = dsp5680xx_execute_queue();
-               err_check(retval, DSP5680XX_ERROR_JTAG_IRSCAN,
-                         "irscan failed!");
+               if (retval != ERROR_OK) {
+                       err_log(DSP5680XX_ERROR_JTAG_IRSCAN, "irscan failed!");
+                       return retval;
+               }
        }
        return retval;
 }
@@ -485,10 +484,14 @@ static int core_rx_lower_data(struct target *target, 
uint8_t *data_read)
 
 static int core_move_value_to_pc(struct target *target, uint32_t value)
 {
-       if (target->state != TARGET_HALTED)
-               err_check(ERROR_FAIL, DSP5680XX_ERROR_TARGET_RUNNING, HALT_MSG)
-       if (!dsp5680xx_context.debug_mode_enabled)
-               err_check(ERROR_FAIL, DSP5680XX_ERROR_NOT_IN_DEBUG, DEBUG_MSG)
+       if (target->state != TARGET_HALTED) {
+               err_log(DSP5680XX_ERROR_TARGET_RUNNING, HALT_MSG);
+               return ERROR_FAIL;
+       }
+       if (!dsp5680xx_context.debug_mode_enabled) {
+               err_log(DSP5680XX_ERROR_NOT_IN_DEBUG, DEBUG_MSG);
+               return ERROR_FAIL;
+       }
        int retval;
 
        retval =
@@ -576,11 +579,10 @@ static int switch_tap(struct target *target, struct 
jtag_tap *master_tap,
        if (!master_tap) {
                master_tap = jtag_tap_by_string("dsp568013.chp");
                if (!master_tap) {
-                       retval = ERROR_FAIL;
                        const char *msg = "Failed to get master tap.";
 
-                       err_check(retval, DSP5680XX_ERROR_JTAG_TAP_FIND_MASTER,
-                                 msg);
+                       err_log(DSP5680XX_ERROR_JTAG_TAP_FIND_MASTER, msg);
+                       return ERROR_FAIL;
                }
        }
        if (!core_tap) {
@@ -734,9 +736,9 @@ static int eonce_enter_debug_mode(struct target *target,
 
        tap_chp = jtag_tap_by_string("dsp568013.chp");
        if (!tap_chp) {
-               retval = ERROR_FAIL;
-               err_check(retval, DSP5680XX_ERROR_JTAG_TAP_FIND_MASTER,
+               err_log(DSP5680XX_ERROR_JTAG_TAP_FIND_MASTER,
                          "Failed to get master tap.");
+               return ERROR_FAIL;
        }
        tap_cpu = jtag_tap_by_string("dsp568013.cpu");
        if (!tap_cpu) {
@@ -814,9 +816,8 @@ static int eonce_enter_debug_mode(struct target *target,
        if ((ir_out & JTAG_STATUS_MASK) == JTAG_STATUS_DEBUG)
                target->state = TARGET_HALTED;
        else {
-               retval = ERROR_FAIL;
-               err_check(retval, DSP5680XX_ERROR_HALT,
-                         "Failed to halt target.");
+               err_log(DSP5680XX_ERROR_HALT, "Failed to halt target.");
+               return ERROR_FAIL;
        }
 
        for (int i = 0; i < 3; i++) {
@@ -841,8 +842,8 @@ static int eonce_enter_debug_mode(struct target *target,
        } else {
                const char *msg = "Failed to set EOnCE module to debug mode";
 
-               retval = ERROR_TARGET_FAILURE;
-               err_check(retval, DSP5680XX_ERROR_ENTER_DEBUG_MODE, msg);
+               err_log(DSP5680XX_ERROR_ENTER_DEBUG_MODE, msg);
+               return ERROR_TARGET_FAILURE;
        }
        if (eonce_status)
                *eonce_status = data_read_from_dr;
@@ -1056,9 +1057,9 @@ static int dsp5680xx_resume(struct target *target, bool 
current,
                                break;
                }
                if (retry == 0) {
-                       retval = ERROR_TARGET_FAILURE;
-                       err_check(retval, DSP5680XX_ERROR_EXIT_DEBUG_MODE,
+                       err_log(DSP5680XX_ERROR_EXIT_DEBUG_MODE,
                                  "Failed to exit debug mode...");
+                       return ERROR_TARGET_FAILURE;
                } else {
                        target->state = TARGET_RUNNING;
                        dsp5680xx_context.debug_mode_enabled = false;
@@ -1074,8 +1075,11 @@ static int dsp5680xx_resume(struct target *target, bool 
current,
                jtag_add_sleep(TIME_DIV_FREESCALE * 200 * 1000);
 
                retval = reset_jtag();
-               err_check(retval, DSP5680XX_ERROR_JTAG_RESET,
-                         "Failed to reset JTAG state machine");
+               if (retval != ERROR_OK) {
+                       err_log(DSP5680XX_ERROR_JTAG_RESET,
+                                 "Failed to reset JTAG state machine");
+                       return retval;
+               }
                jtag_add_sleep(TIME_DIV_FREESCALE * 100 * 1000);
                jtag_add_reset(0, 0);
                jtag_add_sleep(TIME_DIV_FREESCALE * 300 * 1000);
@@ -1086,9 +1090,8 @@ static int dsp5680xx_resume(struct target *target, bool 
current,
                        target->state = TARGET_RUNNING;
                        dsp5680xx_context.debug_mode_enabled = false;
                } else {
-                       retval = ERROR_TARGET_FAILURE;
-                       err_check(retval, DSP5680XX_ERROR_RESUME,
-                                 "Failed to resume target");
+                       err_log(DSP5680XX_ERROR_RESUME, "Failed to resume 
target");
+                       return ERROR_TARGET_FAILURE;
                }
        }
        return ERROR_OK;
@@ -1209,10 +1212,14 @@ static int dsp5680xx_read(struct target *t, 
target_addr_t a, uint32_t size,
 
        uint8_t *buffer = buf;
 
-       if (target->state != TARGET_HALTED)
-               err_check(ERROR_FAIL, DSP5680XX_ERROR_TARGET_RUNNING, HALT_MSG)
-       if (!dsp5680xx_context.debug_mode_enabled)
-               err_check(ERROR_FAIL, DSP5680XX_ERROR_NOT_IN_DEBUG, DEBUG_MSG)
+       if (target->state != TARGET_HALTED) {
+               err_log(DSP5680XX_ERROR_TARGET_RUNNING, HALT_MSG);
+               return ERROR_FAIL;
+       }
+       if (!dsp5680xx_context.debug_mode_enabled) {
+               err_log(DSP5680XX_ERROR_NOT_IN_DEBUG, DEBUG_MSG);
+               return ERROR_FAIL;
+       }
 
        int retval = ERROR_OK;
 
@@ -1473,10 +1480,14 @@ static int dsp5680xx_write(struct target *target, 
target_addr_t a, uint32_t size
 
        uint8_t const *buffer = b;
 
-       if (target->state != TARGET_HALTED)
-               err_check(ERROR_FAIL, DSP5680XX_ERROR_TARGET_RUNNING, HALT_MSG)
-       if (!dsp5680xx_context.debug_mode_enabled)
-               err_check(ERROR_FAIL, DSP5680XX_ERROR_NOT_IN_DEBUG, DEBUG_MSG)
+       if (target->state != TARGET_HALTED) {
+               err_log(DSP5680XX_ERROR_TARGET_RUNNING, HALT_MSG);
+               return ERROR_FAIL;
+       }
+       if (!dsp5680xx_context.debug_mode_enabled) {
+               err_log(DSP5680XX_ERROR_NOT_IN_DEBUG, DEBUG_MSG);
+               return ERROR_FAIL;
+       }
 
        int retval = 0;
 
@@ -1500,10 +1511,8 @@ static int dsp5680xx_write(struct target *target, 
target_addr_t a, uint32_t size
                        dsp5680xx_write_32(target, address, count, buffer, 
p_mem);
                break;
        default:
-               retval = ERROR_TARGET_DATA_ABORT;
-               err_check(retval, DSP5680XX_ERROR_INVALID_DATA_SIZE_UNIT,
-                         "Invalid data size.");
-               break;
+               err_log(DSP5680XX_ERROR_INVALID_DATA_SIZE_UNIT, "Invalid data 
size.");
+               return ERROR_TARGET_DATA_ABORT;
        }
        return retval;
 }
@@ -1511,10 +1520,14 @@ static int dsp5680xx_write(struct target *target, 
target_addr_t a, uint32_t size
 static int dsp5680xx_write_buffer(struct target *t, target_addr_t a, uint32_t 
size,
                                  const uint8_t *b)
 {
-       if (t->state != TARGET_HALTED)
-               err_check(ERROR_FAIL, DSP5680XX_ERROR_TARGET_RUNNING, HALT_MSG)
-       if (!dsp5680xx_context.debug_mode_enabled)
-               err_check(ERROR_FAIL, DSP5680XX_ERROR_NOT_IN_DEBUG, DEBUG_MSG)
+       if (t->state != TARGET_HALTED) {
+               err_log(DSP5680XX_ERROR_TARGET_RUNNING, HALT_MSG);
+               return ERROR_FAIL;
+       }
+       if (!dsp5680xx_context.debug_mode_enabled) {
+               err_log(DSP5680XX_ERROR_NOT_IN_DEBUG, DEBUG_MSG);
+               return ERROR_FAIL;
+       }
        return dsp5680xx_write(t, a, 1, size, b);
 }
 
@@ -1531,10 +1544,14 @@ static int dsp5680xx_write_buffer(struct target *t, 
target_addr_t a, uint32_t si
 static int dsp5680xx_read_buffer(struct target *target, target_addr_t address, 
uint32_t size,
                                 uint8_t *buffer)
 {
-       if (target->state != TARGET_HALTED)
-               err_check(ERROR_FAIL, DSP5680XX_ERROR_TARGET_RUNNING, HALT_MSG)
-       if (!dsp5680xx_context.debug_mode_enabled)
-               err_check(ERROR_FAIL, DSP5680XX_ERROR_NOT_IN_DEBUG, DEBUG_MSG)
+       if (target->state != TARGET_HALTED) {
+               err_log(DSP5680XX_ERROR_TARGET_RUNNING, HALT_MSG);
+               return ERROR_FAIL;
+       }
+       if (!dsp5680xx_context.debug_mode_enabled) {
+               err_log(DSP5680XX_ERROR_NOT_IN_DEBUG, DEBUG_MSG);
+               return ERROR_FAIL;
+       }
 
        /* The "/2" solves the byte/word addressing issue.*/
        return dsp5680xx_read(target, address, 2, size / 2, buffer);
@@ -1644,15 +1661,19 @@ int dsp5680xx_f_protect_check(struct target *target, 
uint16_t *protected)
 {
        int retval;
 
-       if (target->state != TARGET_HALTED)
-               err_check(ERROR_FAIL, DSP5680XX_ERROR_TARGET_RUNNING, HALT_MSG)
-       if (!dsp5680xx_context.debug_mode_enabled)
-               err_check(ERROR_FAIL, DSP5680XX_ERROR_NOT_IN_DEBUG, DEBUG_MSG)
+       if (target->state != TARGET_HALTED) {
+               err_log(DSP5680XX_ERROR_TARGET_RUNNING, HALT_MSG);
+               return ERROR_FAIL;
+       }
+       if (!dsp5680xx_context.debug_mode_enabled) {
+               err_log(DSP5680XX_ERROR_NOT_IN_DEBUG, DEBUG_MSG);
+               return ERROR_FAIL;
+       }
        if (!protected) {
                const char *msg = "NULL pointer not valid.";
 
-               err_check(ERROR_FAIL,
-                         DSP5680XX_ERROR_PROTECT_CHECK_INVALID_ARGS, msg);
+               err_log(DSP5680XX_ERROR_PROTECT_CHECK_INVALID_ARGS, msg);
+               return ERROR_FAIL;
        }
        retval =
                dsp5680xx_read_16_single(target, HFM_BASE_ADDR | HFM_PROT,
@@ -1700,10 +1721,10 @@ static int dsp5680xx_f_ex(struct target *target, 
uint16_t c, uint32_t address, u
                if (retval != ERROR_OK)
                        return retval;
                if ((watchdog--) == 1) {
-                       retval = ERROR_TARGET_FAILURE;
                        const char *msg =
                                "Timed out waiting for FM to finish old 
command.";
-                       err_check(retval, DSP5680XX_ERROR_FM_BUSY, msg);
+                       err_log(DSP5680XX_ERROR_FM_BUSY, msg);
+                       return ERROR_TARGET_FAILURE;
                }
        } while (!(i[0] & 0x40)); /* wait until current command is complete */
 
@@ -1775,17 +1796,17 @@ static int dsp5680xx_f_ex(struct target *target, 
uint16_t c, uint32_t address, u
                if (retval != ERROR_OK)
                        return retval;
                if ((watchdog--) == 1) {
-                       retval = ERROR_TARGET_FAILURE;
-                       err_check(retval, DSP5680XX_ERROR_FM_CMD_TIMED_OUT,
+                       err_log(DSP5680XX_ERROR_FM_CMD_TIMED_OUT,
                                  "FM execution did not finish.");
+                       return ERROR_TARGET_FAILURE;
                }
        } while (!(i[0] & 0x40)); /* wait until the command is complete */
        *hfm_ustat = ((i[0] << 8) | (i[1]));
        if (i[0] & HFM_USTAT_MASK_PVIOL_ACCER) {
-               retval = ERROR_TARGET_FAILURE;
                const char *msg =
                        "pviol and/or accer bits set. HFM command execution 
error";
-               err_check(retval, DSP5680XX_ERROR_FM_EXEC, msg);
+               err_log(DSP5680XX_ERROR_FM_EXEC, msg);
+               return ERROR_TARGET_FAILURE;
        }
        return ERROR_OK;
 }
@@ -1851,9 +1872,8 @@ static int set_fm_ck_div(struct target *target)
        if (retval != ERROR_OK)
                return retval;
        if (i[0] != (0x80 | (HFM_CLK_DEFAULT & 0x7f))) {
-               retval = ERROR_TARGET_FAILURE;
-               err_check(retval, DSP5680XX_ERROR_FM_SET_CLK,
-                         "Unable to set HFM CLK divisor.");
+               err_log(DSP5680XX_ERROR_FM_SET_CLK, "Unable to set HFM CLK 
divisor.");
+               return ERROR_TARGET_FAILURE;
        }
        if (hfm_at_wrong_value)
                LOG_DEBUG("HFM CLK divisor set to 0x%02x.", i[0] & 0x7f);
@@ -1886,8 +1906,10 @@ static int dsp5680xx_f_signature(struct target *target, 
uint32_t address, uint32
                /*
                 * Generate error here, since it is not done in 
eonce_enter_debug_mode_without_reset
                 */
-               err_check(retval, DSP5680XX_ERROR_HALT,
-                         "Failed to halt target.");
+               if (retval != ERROR_OK) {
+                       err_log(DSP5680XX_ERROR_HALT, "Failed to halt target.");
+                       return retval;
+               }
        }
        retval =
                dsp5680xx_f_ex(target, HFM_CALCULATE_DATA_SIGNATURE, address, 
words,
@@ -2154,11 +2176,10 @@ int dsp5680xx_f_wr(struct target *t, const uint8_t *b, 
uint32_t a, uint32_t coun
                return retval;
        if (count % 2) {
                /* TODO implement handling of odd number of words. */
-               retval = ERROR_FAIL;
                const char *msg = "Cannot handle odd number of words.";
 
-               err_check(retval, DSP5680XX_ERROR_FLASHING_INVALID_WORD_COUNT,
-                         msg);
+               err_log(DSP5680XX_ERROR_FLASHING_INVALID_WORD_COUNT, msg);
+               return ERROR_FAIL;
        }
 
        dsp5680xx_context.flush = 1;
@@ -2211,10 +2232,10 @@ int dsp5680xx_f_wr(struct target *t, const uint8_t *b, 
uint32_t a, uint32_t coun
                        return retval;
                pc_crc = perl_crc(buffer, i);
                if (pc_crc != signature) {
-                       retval = ERROR_FAIL;
                        const char *msg =
                                "Flashed data failed CRC check, flash again!";
-                       err_check(retval, DSP5680XX_ERROR_FLASHING_CRC, msg);
+                       err_log(DSP5680XX_ERROR_FLASHING_CRC, msg);
+                       return ERROR_FAIL;
                }
        }
        return retval;
@@ -2236,15 +2257,15 @@ int dsp5680xx_f_unlock(struct target *target)
 
        tap_chp = jtag_tap_by_string("dsp568013.chp");
        if (!tap_chp) {
-               retval = ERROR_FAIL;
-               err_check(retval, DSP5680XX_ERROR_JTAG_TAP_ENABLE_MASTER,
+               err_log(DSP5680XX_ERROR_JTAG_TAP_ENABLE_MASTER,
                          "Failed to get master tap.");
+               return ERROR_FAIL;
        }
        tap_cpu = jtag_tap_by_string("dsp568013.cpu");
        if (!tap_cpu) {
-               retval = ERROR_FAIL;
-               err_check(retval, DSP5680XX_ERROR_JTAG_TAP_ENABLE_CORE,
+               err_log(DSP5680XX_ERROR_JTAG_TAP_ENABLE_CORE,
                          "Failed to get master tap.");
+               return ERROR_FAIL;
        }
 
        retval = eonce_enter_debug_mode_without_reset(target, &eonce_status);
@@ -2255,8 +2276,11 @@ int dsp5680xx_f_unlock(struct target *target)
        jtag_add_sleep(TIME_DIV_FREESCALE * 200 * 1000);
 
        retval = reset_jtag();
-       err_check(retval, DSP5680XX_ERROR_JTAG_RESET,
-                 "Failed to reset JTAG state machine");
+       if (retval != ERROR_OK) {
+               err_log(DSP5680XX_ERROR_JTAG_RESET,
+                         "Failed to reset JTAG state machine");
+               return retval;
+       }
        jtag_add_sleep(150);
 
        /* Enable core tap */
@@ -2299,8 +2323,11 @@ int dsp5680xx_f_unlock(struct target *target)
        jtag_add_sleep(TIME_DIV_FREESCALE * 200 * 1000);
 
        retval = reset_jtag();
-       err_check(retval, DSP5680XX_ERROR_JTAG_RESET,
-                 "Failed to reset JTAG state machine");
+       if (retval != ERROR_OK) {
+               err_log(DSP5680XX_ERROR_JTAG_RESET,
+                         "Failed to reset JTAG state machine");
+               return retval;
+       }
        jtag_add_sleep(150);
 
        instr = 0x0606ffff;
@@ -2345,17 +2372,20 @@ int dsp5680xx_f_lock(struct target *target)
        jtag_add_sleep(TIME_DIV_FREESCALE * 200 * 1000);
 
        retval = reset_jtag();
-       err_check(retval, DSP5680XX_ERROR_JTAG_RESET,
-                 "Failed to reset JTAG state machine");
+       if (retval != ERROR_OK) {
+               err_log(DSP5680XX_ERROR_JTAG_RESET,
+                         "Failed to reset JTAG state machine");
+               return retval;
+       }
        jtag_add_sleep(TIME_DIV_FREESCALE * 100 * 1000);
        jtag_add_reset(0, 0);
        jtag_add_sleep(TIME_DIV_FREESCALE * 300 * 1000);
 
        tap_chp = jtag_tap_by_string("dsp568013.chp");
        if (!tap_chp) {
-               retval = ERROR_FAIL;
-               err_check(retval, DSP5680XX_ERROR_JTAG_TAP_ENABLE_MASTER,
+               err_log(DSP5680XX_ERROR_JTAG_TAP_ENABLE_MASTER,
                          "Failed to get master tap.");
+               return ERROR_FAIL;
        }
        tap_cpu = jtag_tap_by_string("dsp568013.cpu");
        if (!tap_cpu) {

-- 

Reply via email to