riscv: Put commandd_handlers before they are needed. Tabs vs spaces.
parent
879c274cb9
commit
94de39c221
|
@ -1137,6 +1137,71 @@ int riscv_openocd_deassert_reset(struct target *target)
|
||||||
return ERROR_OK;
|
return ERROR_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Command Handlers */
|
||||||
|
COMMAND_HANDLER(riscv_set_command_timeout_sec) {
|
||||||
|
|
||||||
|
if (CMD_ARGC != 1) {
|
||||||
|
LOG_ERROR("Command takes exactly 1 parameter");
|
||||||
|
return ERROR_COMMAND_SYNTAX_ERROR;
|
||||||
|
}
|
||||||
|
int timeout = atoi(CMD_ARGV[0]);
|
||||||
|
if (timeout <= 0){
|
||||||
|
LOG_ERROR("%s is not a valid integer argument for command.", CMD_ARGV[0]);
|
||||||
|
return ERROR_FAIL;
|
||||||
|
}
|
||||||
|
|
||||||
|
riscv_command_timeout_sec = timeout;
|
||||||
|
|
||||||
|
return ERROR_OK;
|
||||||
|
}
|
||||||
|
|
||||||
|
COMMAND_HANDLER(riscv_set_reset_timeout_sec) {
|
||||||
|
|
||||||
|
if (CMD_ARGC != 1) {
|
||||||
|
LOG_ERROR("Command takes exactly 1 parameter");
|
||||||
|
return ERROR_COMMAND_SYNTAX_ERROR;
|
||||||
|
}
|
||||||
|
int timeout = atoi(CMD_ARGV[0]);
|
||||||
|
if (timeout <= 0){
|
||||||
|
LOG_ERROR("%s is not a valid integer argument for command.", CMD_ARGV[0]);
|
||||||
|
return ERROR_FAIL;
|
||||||
|
}
|
||||||
|
|
||||||
|
riscv_reset_timeout_sec = timeout;
|
||||||
|
return ERROR_OK;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static const struct command_registration riscv_exec_command_handlers[] = {
|
||||||
|
{
|
||||||
|
.name = "set_command_timeout_sec",
|
||||||
|
.handler = riscv_set_command_timeout_sec,
|
||||||
|
.mode = COMMAND_ANY,
|
||||||
|
.usage = "riscv set_command_timeout_sec [sec]",
|
||||||
|
.help = "Set the wall-clock timeout (in seconds) for individual commands"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
.name = "set_reset_timeout_sec",
|
||||||
|
.handler = riscv_set_reset_timeout_sec,
|
||||||
|
.mode = COMMAND_ANY,
|
||||||
|
.usage = "riscv set_reset_timeout_sec [sec]",
|
||||||
|
.help = "Set the wall-clock timeout (in seconds) after reset is deasserted"
|
||||||
|
},
|
||||||
|
COMMAND_REGISTRATION_DONE
|
||||||
|
};
|
||||||
|
|
||||||
|
const struct command_registration riscv_command_handlers[] = {
|
||||||
|
{
|
||||||
|
.name = "riscv",
|
||||||
|
.mode = COMMAND_ANY,
|
||||||
|
.help = "RISC-V Command Group",
|
||||||
|
.usage = "",
|
||||||
|
.chain = riscv_exec_command_handlers
|
||||||
|
},
|
||||||
|
COMMAND_REGISTRATION_DONE
|
||||||
|
};
|
||||||
|
|
||||||
struct target_type riscv_target =
|
struct target_type riscv_target =
|
||||||
{
|
{
|
||||||
.name = "riscv",
|
.name = "riscv",
|
||||||
|
@ -1173,7 +1238,7 @@ struct target_type riscv_target =
|
||||||
|
|
||||||
.run_algorithm = riscv_run_algorithm,
|
.run_algorithm = riscv_run_algorithm,
|
||||||
|
|
||||||
.commands = riscv_command_handlers
|
.commands = riscv_command_handlers
|
||||||
};
|
};
|
||||||
|
|
||||||
/*** RISC-V Interface ***/
|
/*** RISC-V Interface ***/
|
||||||
|
@ -1583,7 +1648,6 @@ int riscv_enumerate_triggers(struct target *target)
|
||||||
tselect_rb &= ~(1ULL << (riscv_xlen(target)-1));
|
tselect_rb &= ~(1ULL << (riscv_xlen(target)-1));
|
||||||
if (tselect_rb != t)
|
if (tselect_rb != t)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
uint64_t tdata1 = riscv_get_register_on_hart(target, hartid,
|
uint64_t tdata1 = riscv_get_register_on_hart(target, hartid,
|
||||||
GDB_REGNO_TDATA1);
|
GDB_REGNO_TDATA1);
|
||||||
int type = get_field(tdata1, MCONTROL_TYPE(riscv_xlen(target)));
|
int type = get_field(tdata1, MCONTROL_TYPE(riscv_xlen(target)));
|
||||||
|
@ -1609,70 +1673,6 @@ int riscv_enumerate_triggers(struct target *target)
|
||||||
return ERROR_OK;
|
return ERROR_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Command Handlers */
|
|
||||||
COMMAND_HANDLER(riscv_set_command_timeout_sec) {
|
|
||||||
|
|
||||||
if (CMD_ARGC != 1) {
|
|
||||||
LOG_ERROR("Command takes exactly 1 parameter");
|
|
||||||
return ERROR_COMMAND_SYNTAX_ERROR;
|
|
||||||
}
|
|
||||||
int timeout = atoi(CMD_ARGV[0]);
|
|
||||||
if (timeout <= 0){
|
|
||||||
LOG_ERROR("%s is not a valid integer argument for command.", CMD_ARGV[0]);
|
|
||||||
return ERROR_FAIL;
|
|
||||||
}
|
|
||||||
|
|
||||||
riscv_command_timeout_sec = timeout;
|
|
||||||
|
|
||||||
return ERROR_OK;
|
|
||||||
}
|
|
||||||
|
|
||||||
COMMAND_HANDLER(riscv_set_reset_timeout_sec) {
|
|
||||||
|
|
||||||
if (CMD_ARGC != 1) {
|
|
||||||
LOG_ERROR("Command takes exactly 1 parameter");
|
|
||||||
return ERROR_COMMAND_SYNTAX_ERROR;
|
|
||||||
}
|
|
||||||
int timeout = atoi(CMD_ARGV[0]);
|
|
||||||
if (timeout <= 0){
|
|
||||||
LOG_ERROR("%s is not a valid integer argument for command.", CMD_ARGV[0]);
|
|
||||||
return ERROR_FAIL;
|
|
||||||
}
|
|
||||||
|
|
||||||
riscv_reset_timeout_sec = timeout;
|
|
||||||
return ERROR_OK;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
static const struct command_registration riscv_exec_command_handlers[] = {
|
|
||||||
{
|
|
||||||
.name = "set_command_timeout_sec",
|
|
||||||
.handler = riscv_set_command_timeout_sec,
|
|
||||||
.mode = COMMAND_ANY,
|
|
||||||
.usage = "riscv set_command_timeout_sec [sec]",
|
|
||||||
.help = "Set the wall-clock timeout (in seconds) for individual commands"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
.name = "set_reset_timeout_sec",
|
|
||||||
.handler = riscv_set_reset_timeout_sec,
|
|
||||||
.mode = COMMAND_ANY,
|
|
||||||
.usage = "riscv set_reset_timeout_sec [sec]",
|
|
||||||
.help = "Set the wall-clock timeout (in seconds) after reset is deasserted"
|
|
||||||
},
|
|
||||||
COMMAND_REGISTRATION_DONE
|
|
||||||
};
|
|
||||||
|
|
||||||
const struct command_registration riscv_command_handlers[] = {
|
|
||||||
{
|
|
||||||
.name = "riscv",
|
|
||||||
.mode = COMMAND_ANY,
|
|
||||||
.help = "RISC-V Command Group",
|
|
||||||
.usage = "",
|
|
||||||
.chain = riscv_exec_command_handlers
|
|
||||||
},
|
|
||||||
COMMAND_REGISTRATION_DONE
|
|
||||||
};
|
|
||||||
|
|
||||||
const char *gdb_regno_name(enum gdb_regno regno)
|
const char *gdb_regno_name(enum gdb_regno regno)
|
||||||
{
|
{
|
||||||
static char buf[32];
|
static char buf[32];
|
||||||
|
|
Loading…
Reference in New Issue