target/xscale: change prototype of xscale_display_instruction()
[openocd.git] / src / target / xscale.c
index 09abd9ef0e2e81c758c6d4bc13ce9c39dfa1ac58..bc79c7f74d4f258e1b4cbb8a5ede0073d4af7e1d 100644 (file)
@@ -138,11 +138,11 @@ static int xscale_set_reg_u32(struct reg *reg, uint32_t value)
 
 static const char xscale_not[] = "target is not an XScale";
 
-static int xscale_verify_pointer(struct command_context *cmd_ctx,
+static int xscale_verify_pointer(struct command_invocation *cmd,
        struct xscale_common *xscale)
 {
        if (xscale->common_magic != XSCALE_COMMON_MAGIC) {
-               command_print(cmd_ctx, xscale_not);
+               command_print(cmd->ctx, xscale_not);
                return ERROR_TARGET_INVALID;
        }
        return ERROR_OK;
@@ -2654,16 +2654,16 @@ static inline void xscale_branch_address(struct xscale_trace_data *trace_data,
 
 static inline void xscale_display_instruction(struct target *target, uint32_t pc,
        struct arm_instruction *instruction,
-       struct command_context *cmd_ctx)
+       struct command_invocation *cmd)
 {
        int retval = xscale_read_instruction(target, pc, instruction);
        if (retval == ERROR_OK)
-               command_print(cmd_ctx, "%s", instruction->text);
+               command_print(cmd->ctx, "%s", instruction->text);
        else
-               command_print(cmd_ctx, "0x%8.8" PRIx32 "\t<not found in image>", pc);
+               command_print(cmd->ctx, "0x%8.8" PRIx32 "\t<not found in image>", pc);
 }
 
-static int xscale_analyze_trace(struct target *target, struct command_context *cmd_ctx)
+static int xscale_analyze_trace(struct target *target, struct command_invocation *cmd)
 {
        struct xscale_common *xscale = target_to_xscale(target);
        struct xscale_trace_data *trace_data = xscale->trace.data;
@@ -2771,7 +2771,7 @@ static int xscale_analyze_trace(struct target *target, struct command_context *c
                        count = trace_data->entries[i].data & 0x0f;
                        for (j = 0; j < count; j++) {
                                xscale_display_instruction(target, current_pc, &instruction,
-                                       cmd_ctx);
+                                       cmd);
                                current_pc += xscale->trace.core_state == ARM_STATE_ARM ? 4 : 2;
                        }
 
@@ -2779,7 +2779,7 @@ static int xscale_analyze_trace(struct target *target, struct command_context *c
                         * rollover and some exceptions: undef, swi, prefetch abort. */
                        if ((trace_msg_type == 15) || (exception > 0 && exception < 4)) {
                                xscale_display_instruction(target, current_pc, &instruction,
-                                       cmd_ctx);
+                                       cmd);
                                current_pc += xscale->trace.core_state == ARM_STATE_ARM ? 4 : 2;
                        }
 
@@ -2787,13 +2787,13 @@ static int xscale_analyze_trace(struct target *target, struct command_context *c
                                continue;
 
                        if (exception) {
-                               command_print(cmd_ctx, "--- exception %i ---", exception);
+                               command_print(cmd->ctx, "--- exception %i ---", exception);
                                continue;
                        }
 
                        /* not exception or rollover; next instruction is a branch and is
                         * not included in the count */
-                       xscale_display_instruction(target, current_pc, &instruction, cmd_ctx);
+                       xscale_display_instruction(target, current_pc, &instruction, cmd);
 
                        /* for direct branches, extract branch destination from instruction */
                        if ((trace_msg_type == 8) || (trace_msg_type == 12)) {
@@ -2813,7 +2813,7 @@ static int xscale_analyze_trace(struct target *target, struct command_context *c
                                }
 
                                if (current_pc == 0)
-                                       command_print(cmd_ctx, "address unknown");
+                                       command_print(cmd->ctx, "address unknown");
 
                                continue;
                        }
@@ -2855,7 +2855,7 @@ static int xscale_analyze_trace(struct target *target, struct command_context *c
 
        /* display remaining instructions */
        for (i = 0; i < gap_count; i++) {
-               xscale_display_instruction(target, current_pc, &instruction, cmd_ctx);
+               xscale_display_instruction(target, current_pc, &instruction, cmd);
                current_pc += xscale->trace.core_state == ARM_STATE_ARM ? 4 : 2;
        }
 
@@ -3032,7 +3032,7 @@ COMMAND_HANDLER(xscale_handle_debug_handler_command)
        }
 
        xscale = target_to_xscale(target);
-       retval = xscale_verify_pointer(CMD_CTX, xscale);
+       retval = xscale_verify_pointer(CMD, xscale);
        if (retval != ERROR_OK)
                return retval;
 
@@ -3066,7 +3066,7 @@ COMMAND_HANDLER(xscale_handle_cache_clean_address_command)
                return ERROR_FAIL;
        }
        xscale = target_to_xscale(target);
-       retval = xscale_verify_pointer(CMD_CTX, xscale);
+       retval = xscale_verify_pointer(CMD, xscale);
        if (retval != ERROR_OK)
                return retval;
 
@@ -3086,7 +3086,7 @@ COMMAND_HANDLER(xscale_handle_cache_info_command)
        struct xscale_common *xscale = target_to_xscale(target);
        int retval;
 
-       retval = xscale_verify_pointer(CMD_CTX, xscale);
+       retval = xscale_verify_pointer(CMD, xscale);
        if (retval != ERROR_OK)
                return retval;
 
@@ -3131,7 +3131,7 @@ COMMAND_HANDLER(xscale_handle_mmu_command)
        struct xscale_common *xscale = target_to_xscale(target);
        int retval;
 
-       retval = xscale_verify_pointer(CMD_CTX, xscale);
+       retval = xscale_verify_pointer(CMD, xscale);
        if (retval != ERROR_OK)
                return retval;
 
@@ -3161,7 +3161,7 @@ COMMAND_HANDLER(xscale_handle_idcache_command)
        struct target *target = get_current_target(CMD_CTX);
        struct xscale_common *xscale = target_to_xscale(target);
 
-       int retval = xscale_verify_pointer(CMD_CTX, xscale);
+       int retval = xscale_verify_pointer(CMD, xscale);
        if (retval != ERROR_OK)
                return retval;
 
@@ -3222,7 +3222,7 @@ COMMAND_HANDLER(xscale_handle_vector_catch_command)
        uint32_t catch = 0;
        struct reg *dcsr_reg = &xscale->reg_cache->reg_list[XSCALE_DCSR];
 
-       retval = xscale_verify_pointer(CMD_CTX, xscale);
+       retval = xscale_verify_pointer(CMD, xscale);
        if (retval != ERROR_OK)
                return retval;
 
@@ -3272,7 +3272,7 @@ COMMAND_HANDLER(xscale_handle_vector_table_command)
        int err = 0;
        int retval;
 
-       retval = xscale_verify_pointer(CMD_CTX, xscale);
+       retval = xscale_verify_pointer(CMD, xscale);
        if (retval != ERROR_OK)
                return retval;
 
@@ -3330,7 +3330,7 @@ COMMAND_HANDLER(xscale_handle_trace_buffer_command)
        uint32_t dcsr_value;
        int retval;
 
-       retval = xscale_verify_pointer(CMD_CTX, xscale);
+       retval = xscale_verify_pointer(CMD, xscale);
        if (retval != ERROR_OK)
                return retval;
 
@@ -3395,7 +3395,7 @@ COMMAND_HANDLER(xscale_handle_trace_image_command)
        if (CMD_ARGC < 1)
                return ERROR_COMMAND_SYNTAX_ERROR;
 
-       retval = xscale_verify_pointer(CMD_CTX, xscale);
+       retval = xscale_verify_pointer(CMD, xscale);
        if (retval != ERROR_OK)
                return retval;
 
@@ -3434,7 +3434,7 @@ COMMAND_HANDLER(xscale_handle_dump_trace_command)
        struct fileio *file;
        int retval;
 
-       retval = xscale_verify_pointer(CMD_CTX, xscale);
+       retval = xscale_verify_pointer(CMD, xscale);
        if (retval != ERROR_OK)
                return retval;
 
@@ -3482,11 +3482,11 @@ COMMAND_HANDLER(xscale_handle_analyze_trace_buffer_command)
        struct xscale_common *xscale = target_to_xscale(target);
        int retval;
 
-       retval = xscale_verify_pointer(CMD_CTX, xscale);
+       retval = xscale_verify_pointer(CMD, xscale);
        if (retval != ERROR_OK)
                return retval;
 
-       xscale_analyze_trace(target, CMD_CTX);
+       xscale_analyze_trace(target, CMD);
 
        return ERROR_OK;
 }
@@ -3497,7 +3497,7 @@ COMMAND_HANDLER(xscale_handle_cp15)
        struct xscale_common *xscale = target_to_xscale(target);
        int retval;
 
-       retval = xscale_verify_pointer(CMD_CTX, xscale);
+       retval = xscale_verify_pointer(CMD, xscale);
        if (retval != ERROR_OK)
                return retval;
 
@@ -3577,6 +3577,7 @@ static const struct command_registration xscale_exec_command_handlers[] = {
                .handler = xscale_handle_cache_info_command,
                .mode = COMMAND_EXEC,
                .help = "display information about CPU caches",
+               .usage = "",
        },
        {
                .name = "mmu",

Linking to existing account procedure

If you already have an account and want to add another login method you MUST first sign in with your existing account and then change URL to read https://review.openocd.org/login/?link to get to this page again but this time it'll work for linking. Thank you.

SSH host keys fingerprints

1024 SHA256:YKx8b7u5ZWdcbp7/4AeXNaqElP49m6QrwfXaqQGJAOk gerrit-code-review@openocd.zylin.com (DSA)
384 SHA256:jHIbSQa4REvwCFG4cq5LBlBLxmxSqelQPem/EXIrxjk gerrit-code-review@openocd.org (ECDSA)
521 SHA256:UAOPYkU9Fjtcao0Ul/Rrlnj/OsQvt+pgdYSZ4jOYdgs gerrit-code-review@openocd.org (ECDSA)
256 SHA256:A13M5QlnozFOvTllybRZH6vm7iSt0XLxbA48yfc2yfY gerrit-code-review@openocd.org (ECDSA)
256 SHA256:spYMBqEYoAOtK7yZBrcwE8ZpYt6b68Cfh9yEVetvbXg gerrit-code-review@openocd.org (ED25519)
+--[ED25519 256]--+
|=..              |
|+o..   .         |
|*.o   . .        |
|+B . . .         |
|Bo. = o S        |
|Oo.+ + =         |
|oB=.* = . o      |
| =+=.+   + E     |
|. .=o   . o      |
+----[SHA256]-----+
2048 SHA256:0Onrb7/PHjpo6iVZ7xQX2riKN83FJ3KGU0TvI0TaFG4 gerrit-code-review@openocd.zylin.com (RSA)