summaryrefslogtreecommitdiff
path: root/src/target/armv7a.c
diff options
context:
space:
mode:
authorZachary T Welch <zw@superlucidity.net>2009-11-23 07:43:05 -0800
committerZachary T Welch <zw@superlucidity.net>2009-11-24 21:37:35 -0800
commitd79176e1bc4699a52663b87dc52f02fb7afa3d54 (patch)
treee2e0f37161ba6e79479de4f3d259d7bb10e29a56 /src/target/armv7a.c
parent84c03168a54549e2a102ceb25219ac8a2281d954 (diff)
downloadopenocd+libswd-d79176e1bc4699a52663b87dc52f02fb7afa3d54.tar.gz
openocd+libswd-d79176e1bc4699a52663b87dc52f02fb7afa3d54.tar.bz2
openocd+libswd-d79176e1bc4699a52663b87dc52f02fb7afa3d54.tar.xz
openocd+libswd-d79176e1bc4699a52663b87dc52f02fb7afa3d54.zip
armv7a: use register_commands()
Diffstat (limited to 'src/target/armv7a.c')
-rw-r--r--src/target/armv7a.c75
1 files changed, 48 insertions, 27 deletions
diff --git a/src/target/armv7a.c b/src/target/armv7a.c
index 67638636..7cc22736 100644
--- a/src/target/armv7a.c
+++ b/src/target/armv7a.c
@@ -144,33 +144,54 @@ COMMAND_HANDLER(handle_dap_info_command)
return dap_info_command(CMD_CTX, swjdp, apsel);
}
+static const struct command_registration armv7a_exec_command_handlers[] = {
+ {
+ .name = "info",
+ .handler = &handle_dap_info_command,
+ .mode = COMMAND_EXEC,
+ .help = "dap info for ap [num], "
+ "default currently selected AP",
+ },
+ {
+ .name = "apsel",
+ .handler = &handle_dap_apsel_command,
+ .mode = COMMAND_EXEC,
+ .help = "select a different AP [num] (default 0)",
+ },
+ {
+ .name = "apid",
+ .handler = &handle_dap_apid_command,
+ .mode = COMMAND_EXEC,
+ .help = "return id reg from AP [num], "
+ "default currently selected AP",
+ },
+ {
+ .name = "baseaddr",
+ .handler = &handle_dap_baseaddr_command,
+ .mode = COMMAND_EXEC,
+ .help = "return debug base address from AP [num], "
+ "default currently selected AP",
+ },
+ {
+ .name = "memaccess",
+ .handler = &handle_dap_memaccess_command,
+ .mode = COMMAND_EXEC,
+ .help = "set/get number of extra tck for mem-ap memory "
+ "bus access [0-255]",
+ },
+ COMMAND_REGISTRATION_DONE
+};
+static const struct command_registration armv7a_command_handlers[] = {
+ {
+ .name = "dap",
+ .mode = COMMAND_ANY,
+ .help = "Cortex DAP command group",
+ .chain = armv7a_exec_command_handlers,
+ },
+ COMMAND_REGISTRATION_DONE
+};
+
int armv7a_register_commands(struct command_context *cmd_ctx)
{
- struct command *arm_adi_v5_dap_cmd;
-
- arm_adi_v5_dap_cmd = COMMAND_REGISTER(cmd_ctx, NULL, "dap",
- NULL, COMMAND_ANY,
- "cortex dap specific commands");
-
- COMMAND_REGISTER(cmd_ctx, arm_adi_v5_dap_cmd, "info",
- handle_dap_info_command, COMMAND_EXEC,
- "dap info for ap [num], "
- "default currently selected AP");
- COMMAND_REGISTER(cmd_ctx, arm_adi_v5_dap_cmd, "apsel",
- handle_dap_apsel_command, COMMAND_EXEC,
- "select a different AP [num] (default 0)");
- COMMAND_REGISTER(cmd_ctx, arm_adi_v5_dap_cmd, "apid",
- handle_dap_apid_command, COMMAND_EXEC,
- "return id reg from AP [num], "
- "default currently selected AP");
- COMMAND_REGISTER(cmd_ctx, arm_adi_v5_dap_cmd, "baseaddr",
- handle_dap_baseaddr_command, COMMAND_EXEC,
- "return debug base address from AP [num], "
- "default currently selected AP");
- COMMAND_REGISTER(cmd_ctx, arm_adi_v5_dap_cmd, "memaccess",
- handle_dap_memaccess_command, COMMAND_EXEC,
- "set/get number of extra tck for mem-ap memory "
- "bus access [0-255]");
-
- return ERROR_OK;
+ return register_commands(cmd_ctx, NULL, armv7a_command_handlers);
}