str7x_info->busy_bits = (FLASH_LOCK | FLASH_BSYA1 | FLASH_BSYA0);
str7x_info->disable_bit = (1 << 1);
- if (strcmp(args[6], "STR71x") == 0)
+ if (strcmp(CMD_ARGV[6], "STR71x") == 0)
{
str7x_info->register_base = 0x40100000;
}
- else if (strcmp(args[6], "STR73x") == 0)
+ else if (strcmp(CMD_ARGV[6], "STR73x") == 0)
{
str7x_info->register_base = 0x80100000;
str7x_info->busy_bits = (FLASH_LOCK | FLASH_BSYA0);
}
- else if (strcmp(args[6], "STR75x") == 0)
+ else if (strcmp(CMD_ARGV[6], "STR75x") == 0)
{
str7x_info->register_base = 0x20100000;
str7x_info->disable_bit = (1 << 0);
}
else
{
- LOG_ERROR("unknown STR7x variant: '%s'", args[6]);
+ LOG_ERROR("unknown STR7x variant: '%s'", CMD_ARGV[6]);
free(str7x_info);
return ERROR_FLASH_BANK_INVALID;
}
if (CMD_ARGC < 1)
{
- command_print(cmd_ctx, "str7x disable_jtag <bank>");
+ command_print(CMD_CTX, "str7x disable_jtag <bank>");
return ERROR_OK;
}
struct flash_bank *bank;
- int retval = CALL_COMMAND_HANDLER(flash_command_get_bank_by_num, 0, &bank);
+ int retval = CALL_COMMAND_HANDLER(flash_command_get_bank, 0, &bank);
if (ERROR_OK != retval)
return retval;
return ERROR_OK;
}
-static int str7x_register_commands(struct command_context *cmd_ctx)
-{
- struct command *str7x_cmd = register_command(cmd_ctx, NULL, "str7x",
- NULL, COMMAND_ANY, "str7x flash specific commands");
-
- register_command(cmd_ctx, str7x_cmd, "disable_jtag",
- str7x_handle_disable_jtag_command, COMMAND_EXEC,
- "disable jtag access");
-
- return ERROR_OK;
-}
+static const struct command_registration str7x_exec_command_handlers[] = {
+ {
+ .name = "disable_jtag",
+ .handler = &str7x_handle_disable_jtag_command,
+ .mode = COMMAND_EXEC,
+ .help = "disable jtag access",
+ },
+ COMMAND_REGISTRATION_DONE
+};
+static const struct command_registration str7x_command_handlers[] = {
+ {
+ .name = "str7x",
+ .mode = COMMAND_ANY,
+ .help = "str7x flash command group",
+ .chain = str7x_exec_command_handlers,
+ },
+ COMMAND_REGISTRATION_DONE
+};
struct flash_driver str7x_flash = {
.name = "str7x",
- .register_commands = &str7x_register_commands,
+ .commands = str7x_command_handlers,
.flash_bank_command = &str7x_flash_bank_command,
.erase = &str7x_erase,
.protect = &str7x_protect,