flash/nor/stm32f1x: remove write alignment code
[fw/openocd] / src / target / xscale.c
index b25999d3c65ccf0d619d46b96efed69d0e00dcef..78bd09922eadb4562713cee9745116d781a4c8e1 100644 (file)
@@ -150,7 +150,7 @@ static int xscale_verify_pointer(struct command_invocation *cmd,
 
 static int xscale_jtag_set_instr(struct jtag_tap *tap, uint32_t new_instr, tap_state_t end_state)
 {
-       assert(tap != NULL);
+       assert(tap);
 
        if (buf_get_u32(tap->cur_instr, 0, tap->ir_length) != new_instr) {
                struct scan_field field;
@@ -1087,7 +1087,7 @@ static void xscale_enable_watchpoints(struct target *target)
        struct watchpoint *watchpoint = target->watchpoints;
 
        while (watchpoint) {
-               if (watchpoint->set == 0)
+               if (!watchpoint->is_set)
                        xscale_set_watchpoint(target, watchpoint);
                watchpoint = watchpoint->next;
        }
@@ -1099,7 +1099,7 @@ static void xscale_enable_breakpoints(struct target *target)
 
        /* set any pending breakpoints */
        while (breakpoint) {
-               if (breakpoint->set == 0)
+               if (!breakpoint->is_set)
                        xscale_set_breakpoint(target, breakpoint);
                breakpoint = breakpoint->next;
        }
@@ -1158,7 +1158,7 @@ static int xscale_resume(struct target *target, int current,
                struct breakpoint *breakpoint;
                breakpoint = breakpoint_find(target,
                                buf_get_u32(arm->pc->value, 0, 32));
-               if (breakpoint != NULL) {
+               if (breakpoint) {
                        uint32_t next_pc;
                        enum trace_mode saved_trace_mode;
 
@@ -1421,7 +1421,7 @@ static int xscale_step(struct target *target, int current,
        if (handle_breakpoints)
                breakpoint = breakpoint_find(target,
                                buf_get_u32(arm->pc->value, 0, 32));
-       if (breakpoint != NULL) {
+       if (breakpoint) {
                retval = xscale_unset_breakpoint(target, breakpoint);
                if (retval != ERROR_OK)
                        return retval;
@@ -1506,7 +1506,7 @@ static int xscale_deassert_reset(struct target *target)
        /* mark all hardware breakpoints as unset */
        while (breakpoint) {
                if (breakpoint->type == BKPT_HARD)
-                       breakpoint->set = 0;
+                       breakpoint->is_set = false;
                breakpoint = breakpoint->next;
        }
 
@@ -2088,7 +2088,7 @@ static int xscale_set_breakpoint(struct target *target,
                return ERROR_TARGET_NOT_HALTED;
        }
 
-       if (breakpoint->set) {
+       if (breakpoint->is_set) {
                LOG_WARNING("breakpoint already set");
                return ERROR_OK;
        }
@@ -2098,11 +2098,13 @@ static int xscale_set_breakpoint(struct target *target,
                if (!xscale->ibcr0_used) {
                        xscale_set_reg_u32(&xscale->reg_cache->reg_list[XSCALE_IBCR0], value);
                        xscale->ibcr0_used = 1;
-                       breakpoint->set = 1;    /* breakpoint set on first breakpoint register */
+                       /* breakpoint set on first breakpoint register */
+                       breakpoint_hw_set(breakpoint, 0);
                } else if (!xscale->ibcr1_used) {
                        xscale_set_reg_u32(&xscale->reg_cache->reg_list[XSCALE_IBCR1], value);
                        xscale->ibcr1_used = 1;
-                       breakpoint->set = 2;    /* breakpoint set on second breakpoint register */
+                       /* breakpoint set on second breakpoint register */
+                       breakpoint_hw_set(breakpoint, 1);
                } else {/* bug: availability previously verified in xscale_add_breakpoint() */
                        LOG_ERROR("BUG: no hardware comparator available");
                        return ERROR_TARGET_RESOURCE_NOT_AVAILABLE;
@@ -2133,7 +2135,7 @@ static int xscale_set_breakpoint(struct target *target,
                        if (retval != ERROR_OK)
                                return retval;
                }
-               breakpoint->set = 1;
+               breakpoint->is_set = true;
 
                xscale_send_u32(target, 0x50);  /* clean dcache */
                xscale_send_u32(target, xscale->cache_clean_address);
@@ -2176,20 +2178,20 @@ static int xscale_unset_breakpoint(struct target *target,
                return ERROR_TARGET_NOT_HALTED;
        }
 
-       if (!breakpoint->set) {
+       if (!breakpoint->is_set) {
                LOG_WARNING("breakpoint not set");
                return ERROR_OK;
        }
 
        if (breakpoint->type == BKPT_HARD) {
-               if (breakpoint->set == 1) {
+               if (breakpoint->number == 0) {
                        xscale_set_reg_u32(&xscale->reg_cache->reg_list[XSCALE_IBCR0], 0x0);
                        xscale->ibcr0_used = 0;
-               } else if (breakpoint->set == 2) {
+               } else if (breakpoint->number == 1) {
                        xscale_set_reg_u32(&xscale->reg_cache->reg_list[XSCALE_IBCR1], 0x0);
                        xscale->ibcr1_used = 0;
                }
-               breakpoint->set = 0;
+               breakpoint->is_set = false;
        } else {
                /* restore original instruction (kept in target endianness) */
                if (breakpoint->length == 4) {
@@ -2203,7 +2205,7 @@ static int xscale_unset_breakpoint(struct target *target,
                        if (retval != ERROR_OK)
                                return retval;
                }
-               breakpoint->set = 0;
+               breakpoint->is_set = false;
 
                xscale_send_u32(target, 0x50);  /* clean dcache */
                xscale_send_u32(target, xscale->cache_clean_address);
@@ -2223,7 +2225,7 @@ static int xscale_remove_breakpoint(struct target *target, struct breakpoint *br
                return ERROR_TARGET_NOT_HALTED;
        }
 
-       if (breakpoint->set)
+       if (breakpoint->is_set)
                xscale_unset_breakpoint(target, breakpoint);
 
        if (breakpoint->type == BKPT_HARD)
@@ -2279,13 +2281,13 @@ static int xscale_set_watchpoint(struct target *target,
                xscale_set_reg_u32(&xscale->reg_cache->reg_list[XSCALE_DBR0], watchpoint->address);
                dbcon_value |= enable;
                xscale_set_reg_u32(dbcon, dbcon_value);
-               watchpoint->set = 1;
+               watchpoint_set(watchpoint, 0);
                xscale->dbr0_used = 1;
        } else if (!xscale->dbr1_used) {
                xscale_set_reg_u32(&xscale->reg_cache->reg_list[XSCALE_DBR1], watchpoint->address);
                dbcon_value |= enable << 2;
                xscale_set_reg_u32(dbcon, dbcon_value);
-               watchpoint->set = 2;
+               watchpoint_set(watchpoint, 1);
                xscale->dbr1_used = 1;
        } else {
                LOG_ERROR("BUG: no hardware comparator available");
@@ -2349,12 +2351,12 @@ static int xscale_unset_watchpoint(struct target *target,
                return ERROR_TARGET_NOT_HALTED;
        }
 
-       if (!watchpoint->set) {
+       if (!watchpoint->is_set) {
                LOG_WARNING("breakpoint not set");
                return ERROR_OK;
        }
 
-       if (watchpoint->set == 1) {
+       if (watchpoint->number == 0) {
                if (watchpoint->length > 4) {
                        dbcon_value &= ~0x103;  /* clear DBCON[M] as well */
                        xscale->dbr1_used = 0;  /* DBR1 was used for mask */
@@ -2363,12 +2365,12 @@ static int xscale_unset_watchpoint(struct target *target,
 
                xscale_set_reg_u32(dbcon, dbcon_value);
                xscale->dbr0_used = 0;
-       } else if (watchpoint->set == 2) {
+       } else if (watchpoint->number == 1) {
                dbcon_value &= ~0xc;
                xscale_set_reg_u32(dbcon, dbcon_value);
                xscale->dbr1_used = 0;
        }
-       watchpoint->set = 0;
+       watchpoint->is_set = false;
 
        return ERROR_OK;
 }
@@ -2382,7 +2384,7 @@ static int xscale_remove_watchpoint(struct target *target, struct watchpoint *wa
                return ERROR_TARGET_NOT_HALTED;
        }
 
-       if (watchpoint->set)
+       if (watchpoint->is_set)
                xscale_unset_watchpoint(target, watchpoint);
 
        if (watchpoint->length > 4)
@@ -3048,7 +3050,7 @@ COMMAND_HANDLER(xscale_handle_debug_handler_command)
                return ERROR_COMMAND_SYNTAX_ERROR;
 
        target = get_target(CMD_ARGV[0]);
-       if (target == NULL) {
+       if (!target) {
                LOG_ERROR("target '%s' not defined", CMD_ARGV[0]);
                return ERROR_FAIL;
        }
@@ -3083,7 +3085,7 @@ COMMAND_HANDLER(xscale_handle_cache_clean_address_command)
                return ERROR_COMMAND_SYNTAX_ERROR;
 
        target = get_target(CMD_ARGV[0]);
-       if (target == NULL) {
+       if (!target) {
                LOG_ERROR("target '%s' not defined", CMD_ARGV[0]);
                return ERROR_FAIL;
        }