command_handler: change 'args' to CMD_ARGV
This patch converts all instances of 'args' in COMMAND_HANDLER routines to use CMD_ARGV macro.
This commit is contained in:
@@ -2378,17 +2378,17 @@ COMMAND_HANDLER(sam3_handle_gpnvm_command)
|
||||
who = -1;
|
||||
break;
|
||||
case 2:
|
||||
if ((0 == strcmp(args[0], "show")) && (0 == strcmp(args[1], "all"))) {
|
||||
if ((0 == strcmp(CMD_ARGV[0], "show")) && (0 == strcmp(CMD_ARGV[1], "all"))) {
|
||||
who = -1;
|
||||
} else {
|
||||
uint32_t v32;
|
||||
COMMAND_PARSE_NUMBER(u32, args[1], v32);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[1], v32);
|
||||
who = v32;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
if (0 == strcmp("show", args[0])) {
|
||||
if (0 == strcmp("show", CMD_ARGV[0])) {
|
||||
if (who == -1) {
|
||||
showall:
|
||||
r = ERROR_OK;
|
||||
@@ -2416,13 +2416,13 @@ COMMAND_HANDLER(sam3_handle_gpnvm_command)
|
||||
return ERROR_COMMAND_SYNTAX_ERROR;
|
||||
}
|
||||
|
||||
if (0 == strcmp("set", args[0])) {
|
||||
if (0 == strcmp("set", CMD_ARGV[0])) {
|
||||
r = FLASHD_SetGPNVM(&(pChip->details.bank[0]), who);
|
||||
} else if ((0 == strcmp("clr", args[0])) ||
|
||||
(0 == strcmp("clear", args[0]))) { // quietly accept both
|
||||
} else if ((0 == strcmp("clr", CMD_ARGV[0])) ||
|
||||
(0 == strcmp("clear", CMD_ARGV[0]))) { // quietly accept both
|
||||
r = FLASHD_ClrGPNVM(&(pChip->details.bank[0]), who);
|
||||
} else {
|
||||
command_print(cmd_ctx, "Unkown command: %s", args[0]);
|
||||
command_print(cmd_ctx, "Unkown command: %s", CMD_ARGV[0]);
|
||||
r = ERROR_COMMAND_SYNTAX_ERROR;
|
||||
}
|
||||
return r;
|
||||
@@ -2446,7 +2446,7 @@ COMMAND_HANDLER(sam3_handle_slowclk_command)
|
||||
{
|
||||
// set
|
||||
uint32_t v;
|
||||
COMMAND_PARSE_NUMBER(u32, args[0], v);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[0], v);
|
||||
if (v > 200000) {
|
||||
// absurd slow clock of 200Khz?
|
||||
command_print(cmd_ctx,"Absurd/illegal slow clock freq: %d\n", (int)(v));
|
||||
|
||||
@@ -749,20 +749,20 @@ FLASH_BANK_COMMAND_HANDLER(at91sam7_flash_bank_command)
|
||||
return ERROR_OK;
|
||||
}
|
||||
|
||||
COMMAND_PARSE_NUMBER(u32, args[1], base_address);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[1], base_address);
|
||||
|
||||
COMMAND_PARSE_NUMBER(int, args[3], chip_width);
|
||||
COMMAND_PARSE_NUMBER(int, args[4], bus_width);
|
||||
COMMAND_PARSE_NUMBER(int, CMD_ARGV[3], chip_width);
|
||||
COMMAND_PARSE_NUMBER(int, CMD_ARGV[4], bus_width);
|
||||
|
||||
COMMAND_PARSE_NUMBER(int, args[8], banks_num);
|
||||
COMMAND_PARSE_NUMBER(int, args[9], num_sectors);
|
||||
COMMAND_PARSE_NUMBER(u16, args[10], pages_per_sector);
|
||||
COMMAND_PARSE_NUMBER(u16, args[11], page_size);
|
||||
COMMAND_PARSE_NUMBER(u16, args[12], num_nvmbits);
|
||||
COMMAND_PARSE_NUMBER(int, CMD_ARGV[8], banks_num);
|
||||
COMMAND_PARSE_NUMBER(int, CMD_ARGV[9], num_sectors);
|
||||
COMMAND_PARSE_NUMBER(u16, CMD_ARGV[10], pages_per_sector);
|
||||
COMMAND_PARSE_NUMBER(u16, CMD_ARGV[11], page_size);
|
||||
COMMAND_PARSE_NUMBER(u16, CMD_ARGV[12], num_nvmbits);
|
||||
|
||||
if (CMD_ARGC == 14) {
|
||||
unsigned long freq;
|
||||
COMMAND_PARSE_NUMBER(ulong, args[13], freq);
|
||||
COMMAND_PARSE_NUMBER(ulong, CMD_ARGV[13], freq);
|
||||
ext_freq = freq * 1000;
|
||||
at91sam7_info->ext_freq = ext_freq;
|
||||
}
|
||||
@@ -774,8 +774,8 @@ FLASH_BANK_COMMAND_HANDLER(at91sam7_flash_bank_command)
|
||||
return ERROR_OK;
|
||||
}
|
||||
|
||||
target_name = calloc(strlen(args[7]) + 1, sizeof(char));
|
||||
strcpy(target_name, args[7]);
|
||||
target_name = calloc(strlen(CMD_ARGV[7]) + 1, sizeof(char));
|
||||
strcpy(target_name, CMD_ARGV[7]);
|
||||
|
||||
/* calculate bank size */
|
||||
bank_size = num_sectors * pages_per_sector * page_size;
|
||||
@@ -1120,7 +1120,7 @@ COMMAND_HANDLER(at91sam7_handle_gpnvm_command)
|
||||
}
|
||||
if (strcmp(bank->driver->name, "at91sam7"))
|
||||
{
|
||||
command_print(cmd_ctx, "not an at91sam7 flash bank '%s'", args[0]);
|
||||
command_print(cmd_ctx, "not an at91sam7 flash bank '%s'", CMD_ARGV[0]);
|
||||
return ERROR_FLASH_BANK_INVALID;
|
||||
}
|
||||
if (bank->target->state != TARGET_HALTED)
|
||||
@@ -1129,11 +1129,11 @@ COMMAND_HANDLER(at91sam7_handle_gpnvm_command)
|
||||
return ERROR_TARGET_NOT_HALTED;
|
||||
}
|
||||
|
||||
if (strcmp(args[1], "set") == 0)
|
||||
if (strcmp(CMD_ARGV[1], "set") == 0)
|
||||
{
|
||||
flashcmd = SGPB;
|
||||
}
|
||||
else if (strcmp(args[1], "clear") == 0)
|
||||
else if (strcmp(CMD_ARGV[1], "clear") == 0)
|
||||
{
|
||||
flashcmd = CGPB;
|
||||
}
|
||||
@@ -1152,10 +1152,10 @@ COMMAND_HANDLER(at91sam7_handle_gpnvm_command)
|
||||
}
|
||||
}
|
||||
|
||||
COMMAND_PARSE_NUMBER(int, args[0], bit);
|
||||
COMMAND_PARSE_NUMBER(int, CMD_ARGV[0], bit);
|
||||
if ((bit < 0) || (bit >= at91sam7_info->num_nvmbits))
|
||||
{
|
||||
command_print(cmd_ctx, "gpnvm bit '#%s' is out of bounds for target %s", args[0], at91sam7_info->target_name);
|
||||
command_print(cmd_ctx, "gpnvm bit '#%s' is out of bounds for target %s", CMD_ARGV[0], at91sam7_info->target_name);
|
||||
return ERROR_OK;
|
||||
}
|
||||
|
||||
|
||||
@@ -613,8 +613,8 @@ FLASH_BANK_COMMAND_HANDLER(cfi_flash_bank_command)
|
||||
}
|
||||
|
||||
uint16_t chip_width, bus_width;
|
||||
COMMAND_PARSE_NUMBER(u16, args[3], bus_width);
|
||||
COMMAND_PARSE_NUMBER(u16, args[4], chip_width);
|
||||
COMMAND_PARSE_NUMBER(u16, CMD_ARGV[3], bus_width);
|
||||
COMMAND_PARSE_NUMBER(u16, CMD_ARGV[4], chip_width);
|
||||
|
||||
if ((chip_width > CFI_MAX_CHIP_WIDTH)
|
||||
|| (bus_width > CFI_MAX_BUS_WIDTH))
|
||||
@@ -635,11 +635,11 @@ FLASH_BANK_COMMAND_HANDLER(cfi_flash_bank_command)
|
||||
|
||||
for (unsigned i = 6; i < CMD_ARGC; i++)
|
||||
{
|
||||
if (strcmp(args[i], "x16_as_x8") == 0)
|
||||
if (strcmp(CMD_ARGV[i], "x16_as_x8") == 0)
|
||||
{
|
||||
cfi_info->x16_as_x8 = 1;
|
||||
}
|
||||
else if (strcmp(args[i], "jedec_probe") == 0)
|
||||
else if (strcmp(CMD_ARGV[i], "jedec_probe") == 0)
|
||||
{
|
||||
cfi_info->jedec_probe = 1;
|
||||
}
|
||||
|
||||
@@ -648,36 +648,36 @@ NAND_DEVICE_COMMAND_HANDLER(davinci_nand_device_command)
|
||||
if (CMD_ARGC < 5) {
|
||||
LOG_ERROR("parameters: %s target "
|
||||
"chip_addr hwecc_mode aemif_addr",
|
||||
args[0]);
|
||||
CMD_ARGV[0]);
|
||||
goto fail;
|
||||
}
|
||||
|
||||
target = get_target(args[1]);
|
||||
target = get_target(CMD_ARGV[1]);
|
||||
if (!target) {
|
||||
LOG_ERROR("invalid target %s", args[1]);
|
||||
LOG_ERROR("invalid target %s", CMD_ARGV[1]);
|
||||
goto fail;
|
||||
}
|
||||
|
||||
COMMAND_PARSE_NUMBER(ulong, args[2], chip);
|
||||
COMMAND_PARSE_NUMBER(ulong, CMD_ARGV[2], chip);
|
||||
if (chip == 0) {
|
||||
LOG_ERROR("Invalid NAND chip address %s", args[2]);
|
||||
LOG_ERROR("Invalid NAND chip address %s", CMD_ARGV[2]);
|
||||
goto fail;
|
||||
}
|
||||
|
||||
if (strcmp(args[3], "hwecc1") == 0)
|
||||
if (strcmp(CMD_ARGV[3], "hwecc1") == 0)
|
||||
eccmode = HWECC1;
|
||||
else if (strcmp(args[3], "hwecc4") == 0)
|
||||
else if (strcmp(CMD_ARGV[3], "hwecc4") == 0)
|
||||
eccmode = HWECC4;
|
||||
else if (strcmp(args[3], "hwecc4_infix") == 0)
|
||||
else if (strcmp(CMD_ARGV[3], "hwecc4_infix") == 0)
|
||||
eccmode = HWECC4_INFIX;
|
||||
else {
|
||||
LOG_ERROR("Invalid ecc mode %s", args[3]);
|
||||
LOG_ERROR("Invalid ecc mode %s", CMD_ARGV[3]);
|
||||
goto fail;
|
||||
}
|
||||
|
||||
COMMAND_PARSE_NUMBER(ulong, args[4], aemif);
|
||||
COMMAND_PARSE_NUMBER(ulong, CMD_ARGV[4], aemif);
|
||||
if (aemif == 0) {
|
||||
LOG_ERROR("Invalid AEMIF controller address %s", args[4]);
|
||||
LOG_ERROR("Invalid AEMIF controller address %s", CMD_ARGV[4]);
|
||||
goto fail;
|
||||
}
|
||||
|
||||
|
||||
@@ -122,7 +122,7 @@ FLASH_BANK_COMMAND_HANDLER(ecosflash_flash_bank_command)
|
||||
exit(-1);
|
||||
}
|
||||
bank->driver_priv = info;
|
||||
info->driverPath = strdup(args[6]);
|
||||
info->driverPath = strdup(CMD_ARGV[6]);
|
||||
|
||||
/* eCos flash sector sizes are not exposed to OpenOCD, use 0x10000 as
|
||||
* a way to improve impedance match between OpenOCD and eCos flash
|
||||
@@ -141,10 +141,10 @@ FLASH_BANK_COMMAND_HANDLER(ecosflash_flash_bank_command)
|
||||
bank->sectors[i].is_protected = 0;
|
||||
}
|
||||
|
||||
info->target = get_target(args[5]);
|
||||
info->target = get_target(CMD_ARGV[5]);
|
||||
if (info->target == NULL)
|
||||
{
|
||||
LOG_ERROR("target '%s' not defined", args[5]);
|
||||
LOG_ERROR("target '%s' not defined", CMD_ARGV[5]);
|
||||
return ERROR_FAIL;
|
||||
}
|
||||
return ERROR_OK;
|
||||
|
||||
@@ -76,10 +76,10 @@ FLASH_BANK_COMMAND_HANDLER(faux_flash_bank_command)
|
||||
bank->sectors[i].is_protected = 0;
|
||||
}
|
||||
|
||||
info->target = get_target(args[5]);
|
||||
info->target = get_target(CMD_ARGV[5]);
|
||||
if (info->target == NULL)
|
||||
{
|
||||
LOG_ERROR("target '%s' not defined", args[5]);
|
||||
LOG_ERROR("target '%s' not defined", CMD_ARGV[5]);
|
||||
free(info->memory);
|
||||
free(info);
|
||||
return ERROR_FAIL;
|
||||
|
||||
@@ -201,14 +201,14 @@ struct flash_bank *get_flash_bank_by_num(int num)
|
||||
COMMAND_HELPER(flash_command_get_bank_by_num,
|
||||
unsigned name_index, struct flash_bank **bank)
|
||||
{
|
||||
const char *name = CMD_ARGV[name_index];
|
||||
unsigned bank_num;
|
||||
COMMAND_PARSE_NUMBER(uint, args[name_index], bank_num);
|
||||
COMMAND_PARSE_NUMBER(uint, name, bank_num);
|
||||
|
||||
*bank = get_flash_bank_by_num(bank_num);
|
||||
if (!*bank)
|
||||
{
|
||||
command_print(cmd_ctx,
|
||||
"flash bank '#%u' not found", bank_num);
|
||||
command_print(cmd_ctx, "flash bank '%s' not found", name);
|
||||
return ERROR_INVALID_ARGUMENTS;
|
||||
}
|
||||
return ERROR_OK;
|
||||
@@ -227,15 +227,15 @@ COMMAND_HANDLER(handle_flash_bank_command)
|
||||
return ERROR_COMMAND_SYNTAX_ERROR;
|
||||
}
|
||||
|
||||
if ((target = get_target(args[5])) == NULL)
|
||||
if ((target = get_target(CMD_ARGV[5])) == NULL)
|
||||
{
|
||||
LOG_ERROR("target '%s' not defined", args[5]);
|
||||
LOG_ERROR("target '%s' not defined", CMD_ARGV[5]);
|
||||
return ERROR_FAIL;
|
||||
}
|
||||
|
||||
for (i = 0; flash_drivers[i]; i++)
|
||||
{
|
||||
if (strcmp(args[0], flash_drivers[i]->name) != 0)
|
||||
if (strcmp(CMD_ARGV[0], flash_drivers[i]->name) != 0)
|
||||
continue;
|
||||
|
||||
struct flash_bank *p, *c;
|
||||
@@ -243,7 +243,7 @@ COMMAND_HANDLER(handle_flash_bank_command)
|
||||
/* register flash specific commands */
|
||||
if (flash_drivers[i]->register_commands(cmd_ctx) != ERROR_OK)
|
||||
{
|
||||
LOG_ERROR("couldn't register '%s' commands", args[0]);
|
||||
LOG_ERROR("couldn't register '%s' commands", CMD_ARGV[0]);
|
||||
return ERROR_FAIL;
|
||||
}
|
||||
|
||||
@@ -251,10 +251,10 @@ COMMAND_HANDLER(handle_flash_bank_command)
|
||||
c->target = target;
|
||||
c->driver = flash_drivers[i];
|
||||
c->driver_priv = NULL;
|
||||
COMMAND_PARSE_NUMBER(u32, args[1], c->base);
|
||||
COMMAND_PARSE_NUMBER(u32, args[2], c->size);
|
||||
COMMAND_PARSE_NUMBER(int, args[3], c->chip_width);
|
||||
COMMAND_PARSE_NUMBER(int, args[4], c->bus_width);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[1], c->base);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[2], c->size);
|
||||
COMMAND_PARSE_NUMBER(int, CMD_ARGV[3], c->chip_width);
|
||||
COMMAND_PARSE_NUMBER(int, CMD_ARGV[4], c->bus_width);
|
||||
c->num_sectors = 0;
|
||||
c->sectors = NULL;
|
||||
c->next = NULL;
|
||||
@@ -262,7 +262,7 @@ COMMAND_HANDLER(handle_flash_bank_command)
|
||||
retval = CALL_COMMAND_HANDLER(flash_drivers[i]->flash_bank_command, c);
|
||||
if (ERROR_OK != retval)
|
||||
{
|
||||
LOG_ERROR("'%s' driver rejected flash bank at 0x%8.8" PRIx32 , args[0], c->base);
|
||||
LOG_ERROR("'%s' driver rejected flash bank at 0x%8.8" PRIx32 , CMD_ARGV[0], c->base);
|
||||
free(c);
|
||||
return retval;
|
||||
}
|
||||
@@ -289,7 +289,7 @@ COMMAND_HANDLER(handle_flash_bank_command)
|
||||
/* no matching flash driver found */
|
||||
if (!found)
|
||||
{
|
||||
LOG_ERROR("flash driver '%s' not found", args[0]);
|
||||
LOG_ERROR("flash driver '%s' not found", CMD_ARGV[0]);
|
||||
return ERROR_FAIL;
|
||||
}
|
||||
|
||||
@@ -307,7 +307,7 @@ COMMAND_HANDLER(handle_flash_info_command)
|
||||
return ERROR_COMMAND_SYNTAX_ERROR;
|
||||
|
||||
unsigned bank_nr;
|
||||
COMMAND_PARSE_NUMBER(uint, args[0], bank_nr);
|
||||
COMMAND_PARSE_NUMBER(uint, CMD_ARGV[0], bank_nr);
|
||||
|
||||
for (p = flash_banks; p; p = p->next, i++)
|
||||
{
|
||||
@@ -368,7 +368,7 @@ COMMAND_HANDLER(handle_flash_probe_command)
|
||||
}
|
||||
|
||||
unsigned bank_nr;
|
||||
COMMAND_PARSE_NUMBER(uint, args[0], bank_nr);
|
||||
COMMAND_PARSE_NUMBER(uint, CMD_ARGV[0], bank_nr);
|
||||
struct flash_bank *p = get_flash_bank_by_num_noprobe(bank_nr);
|
||||
if (p)
|
||||
{
|
||||
@@ -379,17 +379,17 @@ COMMAND_HANDLER(handle_flash_probe_command)
|
||||
else if (retval == ERROR_FLASH_BANK_INVALID)
|
||||
{
|
||||
command_print(cmd_ctx, "probing failed for flash bank '#%s' at 0x%8.8" PRIx32,
|
||||
args[0], p->base);
|
||||
CMD_ARGV[0], p->base);
|
||||
}
|
||||
else
|
||||
{
|
||||
command_print(cmd_ctx, "unknown error when probing flash bank '#%s' at 0x%8.8" PRIx32,
|
||||
args[0], p->base);
|
||||
CMD_ARGV[0], p->base);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
command_print(cmd_ctx, "flash bank '#%s' is out of bounds", args[0]);
|
||||
command_print(cmd_ctx, "flash bank '#%s' is out of bounds", CMD_ARGV[0]);
|
||||
}
|
||||
|
||||
return ERROR_OK;
|
||||
@@ -415,7 +415,7 @@ COMMAND_HANDLER(handle_flash_erase_check_command)
|
||||
else
|
||||
{
|
||||
command_print(cmd_ctx, "unknown error when checking erase state of flash bank #%s at 0x%8.8" PRIx32,
|
||||
args[0], p->base);
|
||||
CMD_ARGV[0], p->base);
|
||||
}
|
||||
|
||||
for (j = 0; j < p->num_sectors; j++)
|
||||
@@ -453,8 +453,8 @@ COMMAND_HANDLER(handle_flash_erase_address_command)
|
||||
if (CMD_ARGC != 2)
|
||||
return ERROR_COMMAND_SYNTAX_ERROR;
|
||||
|
||||
COMMAND_PARSE_NUMBER(int, args[0], address);
|
||||
COMMAND_PARSE_NUMBER(int, args[1], length);
|
||||
COMMAND_PARSE_NUMBER(int, CMD_ARGV[0], address);
|
||||
COMMAND_PARSE_NUMBER(int, CMD_ARGV[1], length);
|
||||
if (length <= 0)
|
||||
{
|
||||
command_print(cmd_ctx, "Length must be >0");
|
||||
@@ -501,11 +501,11 @@ COMMAND_HANDLER(handle_flash_protect_check_command)
|
||||
}
|
||||
else if (retval == ERROR_FLASH_OPERATION_FAILED)
|
||||
{
|
||||
command_print(cmd_ctx, "checking protection state failed (possibly unsupported) by flash #%s at 0x%8.8" PRIx32, args[0], p->base);
|
||||
command_print(cmd_ctx, "checking protection state failed (possibly unsupported) by flash #%s at 0x%8.8" PRIx32, CMD_ARGV[0], p->base);
|
||||
}
|
||||
else
|
||||
{
|
||||
command_print(cmd_ctx, "unknown error when checking protection state of flash bank '#%s' at 0x%8.8" PRIx32, args[0], p->base);
|
||||
command_print(cmd_ctx, "unknown error when checking protection state of flash bank '#%s' at 0x%8.8" PRIx32, CMD_ARGV[0], p->base);
|
||||
}
|
||||
|
||||
return ERROR_OK;
|
||||
@@ -538,16 +538,16 @@ COMMAND_HANDLER(handle_flash_erase_command)
|
||||
uint32_t first;
|
||||
uint32_t last;
|
||||
|
||||
COMMAND_PARSE_NUMBER(u32, args[0], bank_nr);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[0], bank_nr);
|
||||
struct flash_bank *p = get_flash_bank_by_num(bank_nr);
|
||||
if (!p)
|
||||
return ERROR_OK;
|
||||
|
||||
COMMAND_PARSE_NUMBER(u32, args[1], first);
|
||||
if (strcmp(args[2], "last") == 0)
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[1], first);
|
||||
if (strcmp(CMD_ARGV[2], "last") == 0)
|
||||
last = p->num_sectors - 1;
|
||||
else
|
||||
COMMAND_PARSE_NUMBER(u32, args[2], last);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[2], last);
|
||||
|
||||
int retval;
|
||||
if ((retval = flash_check_sector_parameters(cmd_ctx,
|
||||
@@ -579,20 +579,20 @@ COMMAND_HANDLER(handle_flash_protect_command)
|
||||
uint32_t last;
|
||||
int set;
|
||||
|
||||
COMMAND_PARSE_NUMBER(u32, args[0], bank_nr);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[0], bank_nr);
|
||||
struct flash_bank *p = get_flash_bank_by_num(bank_nr);
|
||||
if (!p)
|
||||
return ERROR_OK;
|
||||
|
||||
COMMAND_PARSE_NUMBER(u32, args[1], first);
|
||||
if (strcmp(args[2], "last") == 0)
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[1], first);
|
||||
if (strcmp(CMD_ARGV[2], "last") == 0)
|
||||
last = p->num_sectors - 1;
|
||||
else
|
||||
COMMAND_PARSE_NUMBER(u32, args[2], last);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[2], last);
|
||||
|
||||
if (strcmp(args[3], "on") == 0)
|
||||
if (strcmp(CMD_ARGV[3], "on") == 0)
|
||||
set = 1;
|
||||
else if (strcmp(args[3], "off") == 0)
|
||||
else if (strcmp(CMD_ARGV[3], "off") == 0)
|
||||
set = 0;
|
||||
else
|
||||
return ERROR_COMMAND_SYNTAX_ERROR;
|
||||
@@ -633,16 +633,16 @@ COMMAND_HANDLER(handle_flash_write_image_command)
|
||||
|
||||
for (;;)
|
||||
{
|
||||
if (strcmp(args[0], "erase") == 0)
|
||||
if (strcmp(CMD_ARGV[0], "erase") == 0)
|
||||
{
|
||||
auto_erase = 1;
|
||||
args++;
|
||||
CMD_ARGV++;
|
||||
CMD_ARGC--;
|
||||
command_print(cmd_ctx, "auto erase enabled");
|
||||
} else if (strcmp(args[0], "unlock") == 0)
|
||||
} else if (strcmp(CMD_ARGV[0], "unlock") == 0)
|
||||
{
|
||||
auto_unlock = true;
|
||||
args++;
|
||||
CMD_ARGV++;
|
||||
CMD_ARGC--;
|
||||
command_print(cmd_ctx, "auto unlock enabled");
|
||||
} else
|
||||
@@ -668,7 +668,7 @@ COMMAND_HANDLER(handle_flash_write_image_command)
|
||||
if (CMD_ARGC >= 2)
|
||||
{
|
||||
image.base_address_set = 1;
|
||||
COMMAND_PARSE_NUMBER(int, args[1], image.base_address);
|
||||
COMMAND_PARSE_NUMBER(int, CMD_ARGV[1], image.base_address);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -678,7 +678,7 @@ COMMAND_HANDLER(handle_flash_write_image_command)
|
||||
|
||||
image.start_address_set = 0;
|
||||
|
||||
retval = image_open(&image, args[0], (CMD_ARGC == 3) ? args[2] : NULL);
|
||||
retval = image_open(&image, CMD_ARGV[0], (CMD_ARGC == 3) ? CMD_ARGV[2] : NULL);
|
||||
if (retval != ERROR_OK)
|
||||
{
|
||||
return retval;
|
||||
@@ -694,7 +694,7 @@ COMMAND_HANDLER(handle_flash_write_image_command)
|
||||
if ((ERROR_OK == retval) && (duration_measure(&bench) == ERROR_OK))
|
||||
{
|
||||
command_print(cmd_ctx, "wrote %" PRIu32 " byte from file %s "
|
||||
"in %fs (%0.3f kb/s)", written, args[0],
|
||||
"in %fs (%0.3f kb/s)", written, CMD_ARGV[0],
|
||||
duration_elapsed(&bench), duration_kbps(&bench, written));
|
||||
}
|
||||
|
||||
@@ -721,9 +721,9 @@ COMMAND_HANDLER(handle_flash_fill_command)
|
||||
if (CMD_ARGC != 3)
|
||||
return ERROR_COMMAND_SYNTAX_ERROR;
|
||||
|
||||
COMMAND_PARSE_NUMBER(u32, args[0], address);
|
||||
COMMAND_PARSE_NUMBER(u32, args[1], pattern);
|
||||
COMMAND_PARSE_NUMBER(u32, args[2], count);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[0], address);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[1], pattern);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[2], count);
|
||||
|
||||
if (count == 0)
|
||||
return ERROR_OK;
|
||||
@@ -824,9 +824,9 @@ COMMAND_HANDLER(handle_flash_write_bank_command)
|
||||
if (ERROR_OK != retval)
|
||||
return retval;
|
||||
|
||||
COMMAND_PARSE_NUMBER(u32, args[2], offset);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[2], offset);
|
||||
|
||||
if (fileio_open(&fileio, args[1], FILEIO_READ, FILEIO_BINARY) != ERROR_OK)
|
||||
if (fileio_open(&fileio, CMD_ARGV[1], FILEIO_READ, FILEIO_BINARY) != ERROR_OK)
|
||||
{
|
||||
return ERROR_OK;
|
||||
}
|
||||
@@ -849,7 +849,7 @@ COMMAND_HANDLER(handle_flash_write_bank_command)
|
||||
{
|
||||
command_print(cmd_ctx, "wrote %zu byte from file %s to flash bank %u"
|
||||
" at offset 0x%8.8" PRIx32 " in %fs (%0.3f kb/s)",
|
||||
fileio.size, args[1], p->bank_number, offset,
|
||||
fileio.size, CMD_ARGV[1], p->bank_number, offset,
|
||||
duration_elapsed(&bench), duration_kbps(&bench, fileio.size));
|
||||
}
|
||||
|
||||
|
||||
@@ -105,21 +105,21 @@ struct flash_driver
|
||||
* layer when this routine is called, and the driver can store
|
||||
* additional information in its struct flash_bank::driver_priv field.
|
||||
*
|
||||
* The args are: @par
|
||||
* The CMD_ARGV are: @par
|
||||
* @code
|
||||
* args[0] = bank
|
||||
* args[1] = drivername {name above}
|
||||
* args[2] = baseaddress
|
||||
* args[3] = lengthbytes
|
||||
* args[4] = chip_width_in bytes
|
||||
* args[5] = bus_width_bytes
|
||||
* args[6] = driver-specific parameters
|
||||
* CMD_ARGV[0] = bank
|
||||
* CMD_ARGV[1] = drivername {name above}
|
||||
* CMD_ARGV[2] = baseaddress
|
||||
* CMD_ARGV[3] = lengthbytes
|
||||
* CMD_ARGV[4] = chip_width_in bytes
|
||||
* CMD_ARGV[5] = bus_width_bytes
|
||||
* CMD_ARGV[6] = driver-specific parameters
|
||||
* @endcode
|
||||
*
|
||||
* For example, args[4] = 16 bit flash, args[5] = 32bit bus.
|
||||
* For example, CMD_ARGV[4] = 16 bit flash, CMD_ARGV[5] = 32bit bus.
|
||||
*
|
||||
* If extra arguments are provided (@a CMD_ARGC > 6), they will
|
||||
* start in @a args[6]. These can be used to implement
|
||||
* start in @a CMD_ARGV[6]. These can be used to implement
|
||||
* driver-specific extensions.
|
||||
*
|
||||
* @returns ERROR_OK if successful; otherwise, an error code.
|
||||
|
||||
@@ -433,7 +433,7 @@ FLASH_BANK_COMMAND_HANDLER(lpc2000_flash_bank_command)
|
||||
lpc2000_info = malloc(sizeof(struct lpc2000_flash_bank));
|
||||
bank->driver_priv = lpc2000_info;
|
||||
|
||||
if (strcmp(args[6], "lpc2000_v1") == 0)
|
||||
if (strcmp(CMD_ARGV[6], "lpc2000_v1") == 0)
|
||||
{
|
||||
lpc2000_info->variant = lpc2000_v1;
|
||||
lpc2000_info->cmd51_dst_boundary = 512;
|
||||
@@ -441,7 +441,7 @@ FLASH_BANK_COMMAND_HANDLER(lpc2000_flash_bank_command)
|
||||
lpc2000_info->cmd51_can_8192b = 1;
|
||||
lpc2000_info->checksum_vector = 5;
|
||||
}
|
||||
else if (strcmp(args[6], "lpc2000_v2") == 0)
|
||||
else if (strcmp(CMD_ARGV[6], "lpc2000_v2") == 0)
|
||||
{
|
||||
lpc2000_info->variant = lpc2000_v2;
|
||||
lpc2000_info->cmd51_dst_boundary = 256;
|
||||
@@ -449,7 +449,7 @@ FLASH_BANK_COMMAND_HANDLER(lpc2000_flash_bank_command)
|
||||
lpc2000_info->cmd51_can_8192b = 0;
|
||||
lpc2000_info->checksum_vector = 5;
|
||||
}
|
||||
else if (strcmp(args[6], "lpc1700") == 0)
|
||||
else if (strcmp(CMD_ARGV[6], "lpc1700") == 0)
|
||||
{
|
||||
lpc2000_info->variant = lpc1700;
|
||||
lpc2000_info->cmd51_dst_boundary = 256;
|
||||
@@ -459,19 +459,19 @@ FLASH_BANK_COMMAND_HANDLER(lpc2000_flash_bank_command)
|
||||
}
|
||||
else
|
||||
{
|
||||
LOG_ERROR("unknown LPC2000 variant: %s", args[6]);
|
||||
LOG_ERROR("unknown LPC2000 variant: %s", CMD_ARGV[6]);
|
||||
free(lpc2000_info);
|
||||
return ERROR_FLASH_BANK_INVALID;
|
||||
}
|
||||
|
||||
lpc2000_info->iap_working_area = NULL;
|
||||
COMMAND_PARSE_NUMBER(u32, args[7], lpc2000_info->cclk);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[7], lpc2000_info->cclk);
|
||||
lpc2000_info->calc_checksum = 0;
|
||||
lpc2000_build_sector_list(bank);
|
||||
|
||||
if (CMD_ARGC >= 9)
|
||||
{
|
||||
if (strcmp(args[8], "calc_checksum") == 0)
|
||||
if (strcmp(CMD_ARGV[8], "calc_checksum") == 0)
|
||||
lpc2000_info->calc_checksum = 1;
|
||||
}
|
||||
|
||||
|
||||
@@ -180,7 +180,7 @@ FLASH_BANK_COMMAND_HANDLER(lpc288x_flash_bank_command)
|
||||
|
||||
/* part wasn't probed for info yet */
|
||||
lpc288x_info->cidr = 0;
|
||||
COMMAND_PARSE_NUMBER(u32, args[6], lpc288x_info->cclk);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[6], lpc288x_info->cclk);
|
||||
|
||||
return ERROR_OK;
|
||||
}
|
||||
|
||||
@@ -623,7 +623,7 @@ COMMAND_HANDLER(lpc2900_handle_read_custom_command)
|
||||
|
||||
/* Try and open the file */
|
||||
struct fileio fileio;
|
||||
const char *filename = args[1];
|
||||
const char *filename = CMD_ARGV[1];
|
||||
int ret = fileio_open( &fileio, filename, FILEIO_WRITE, FILEIO_BINARY );
|
||||
if( ret != ERROR_OK )
|
||||
{
|
||||
@@ -668,7 +668,7 @@ COMMAND_HANDLER(lpc2900_handle_password_command)
|
||||
|
||||
#define ISS_PASSWORD "I_know_what_I_am_doing"
|
||||
|
||||
lpc2900_info->risky = !strcmp( args[1], ISS_PASSWORD );
|
||||
lpc2900_info->risky = !strcmp( CMD_ARGV[1], ISS_PASSWORD );
|
||||
|
||||
if( !lpc2900_info->risky )
|
||||
{
|
||||
@@ -723,8 +723,8 @@ COMMAND_HANDLER(lpc2900_handle_write_custom_command)
|
||||
image.base_address = 0;
|
||||
image.start_address_set = 0;
|
||||
|
||||
const char *filename = args[1];
|
||||
const char *type = (CMD_ARGC >= 3) ? args[2] : NULL;
|
||||
const char *filename = CMD_ARGV[1];
|
||||
const char *type = (CMD_ARGC >= 3) ? CMD_ARGV[2] : NULL;
|
||||
retval = image_open(&image, filename, type);
|
||||
if (retval != ERROR_OK)
|
||||
{
|
||||
@@ -823,8 +823,8 @@ COMMAND_HANDLER(lpc2900_handle_secure_sector_command)
|
||||
|
||||
/* Read sector range, and do a sanity check. */
|
||||
int first, last;
|
||||
COMMAND_PARSE_NUMBER(int, args[1], first);
|
||||
COMMAND_PARSE_NUMBER(int, args[2], last);
|
||||
COMMAND_PARSE_NUMBER(int, CMD_ARGV[1], first);
|
||||
COMMAND_PARSE_NUMBER(int, CMD_ARGV[2], last);
|
||||
if( (first >= bank->num_sectors) ||
|
||||
(last >= bank->num_sectors) ||
|
||||
(first > last) )
|
||||
@@ -1034,7 +1034,7 @@ FLASH_BANK_COMMAND_HANDLER(lpc2900_flash_bank_command)
|
||||
* (if clock too slow), or for erase time (clock too fast).
|
||||
*/
|
||||
uint32_t clk_sys_fmc;
|
||||
COMMAND_PARSE_NUMBER(u32, args[6], clk_sys_fmc);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[6], clk_sys_fmc);
|
||||
lpc2900_info->clk_sys_fmc = clk_sys_fmc * 1000;
|
||||
|
||||
uint32_t clock_limit;
|
||||
|
||||
@@ -37,15 +37,15 @@ NAND_DEVICE_COMMAND_HANDLER(lpc3180_nand_device_command)
|
||||
return ERROR_FLASH_BANK_INVALID;
|
||||
}
|
||||
|
||||
struct target *target = get_target(args[1]);
|
||||
struct target *target = get_target(CMD_ARGV[1]);
|
||||
if (NULL == target)
|
||||
{
|
||||
LOG_ERROR("target '%s' not defined", args[1]);
|
||||
LOG_ERROR("target '%s' not defined", CMD_ARGV[1]);
|
||||
return ERROR_NAND_DEVICE_INVALID;
|
||||
}
|
||||
|
||||
uint32_t osc_freq;
|
||||
COMMAND_PARSE_NUMBER(u32, args[2], osc_freq);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[2], osc_freq);
|
||||
|
||||
struct lpc3180_nand_controller *lpc3180_info;
|
||||
lpc3180_info = malloc(sizeof(struct lpc3180_nand_controller));
|
||||
@@ -842,11 +842,11 @@ COMMAND_HANDLER(handle_lpc3180_select_command)
|
||||
}
|
||||
|
||||
unsigned num;
|
||||
COMMAND_PARSE_NUMBER(uint, args[1], num);
|
||||
COMMAND_PARSE_NUMBER(uint, CMD_ARGV[1], num);
|
||||
struct nand_device *nand = get_nand_device_by_num(num);
|
||||
if (!nand)
|
||||
{
|
||||
command_print(cmd_ctx, "nand device '#%s' is out of bounds", args[0]);
|
||||
command_print(cmd_ctx, "nand device '#%s' is out of bounds", CMD_ARGV[0]);
|
||||
return ERROR_OK;
|
||||
}
|
||||
|
||||
@@ -854,11 +854,11 @@ COMMAND_HANDLER(handle_lpc3180_select_command)
|
||||
|
||||
if (CMD_ARGC == 2)
|
||||
{
|
||||
if (strcmp(args[1], "mlc") == 0)
|
||||
if (strcmp(CMD_ARGV[1], "mlc") == 0)
|
||||
{
|
||||
lpc3180_info->selected_controller = LPC3180_MLC_CONTROLLER;
|
||||
}
|
||||
else if (strcmp(args[1], "slc") == 0)
|
||||
else if (strcmp(CMD_ARGV[1], "slc") == 0)
|
||||
{
|
||||
lpc3180_info->selected_controller = LPC3180_SLC_CONTROLLER;
|
||||
}
|
||||
|
||||
@@ -714,9 +714,9 @@ COMMAND_HANDLER(mg_write_cmd)
|
||||
return ERROR_COMMAND_SYNTAX_ERROR;
|
||||
}
|
||||
|
||||
COMMAND_PARSE_NUMBER(u32, args[2], address);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[2], address);
|
||||
|
||||
ret = fileio_open(&fileio, args[1], FILEIO_READ, FILEIO_BINARY);
|
||||
ret = fileio_open(&fileio, CMD_ARGV[1], FILEIO_READ, FILEIO_BINARY);
|
||||
if (ret != ERROR_OK)
|
||||
return ret;
|
||||
|
||||
@@ -752,7 +752,7 @@ COMMAND_HANDLER(mg_write_cmd)
|
||||
if (duration_measure(&bench) == ERROR_OK)
|
||||
{
|
||||
command_print(cmd_ctx, "wrote %zu byte from file %s "
|
||||
"in %fs (%0.3f kB/s)", fileio.size, args[1],
|
||||
"in %fs (%0.3f kB/s)", fileio.size, CMD_ARGV[1],
|
||||
duration_elapsed(&bench), duration_kbps(&bench, fileio.size));
|
||||
}
|
||||
|
||||
@@ -779,10 +779,10 @@ COMMAND_HANDLER(mg_dump_cmd)
|
||||
return ERROR_COMMAND_SYNTAX_ERROR;
|
||||
}
|
||||
|
||||
COMMAND_PARSE_NUMBER(u32, args[2], address);
|
||||
COMMAND_PARSE_NUMBER(u32, args[3], size);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[2], address);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[3], size);
|
||||
|
||||
ret = fileio_open(&fileio, args[1], FILEIO_WRITE, FILEIO_BINARY);
|
||||
ret = fileio_open(&fileio, CMD_ARGV[1], FILEIO_WRITE, FILEIO_BINARY);
|
||||
if (ret != ERROR_OK)
|
||||
return ret;
|
||||
|
||||
@@ -819,7 +819,7 @@ COMMAND_HANDLER(mg_dump_cmd)
|
||||
{
|
||||
command_print(cmd_ctx, "dump image (address 0x%8.8" PRIx32 " "
|
||||
"size %" PRIu32 ") to file %s in %fs (%0.3f kB/s)",
|
||||
address, size, args[1],
|
||||
address, size, CMD_ARGV[1],
|
||||
duration_elapsed(&bench), duration_kbps(&bench, size));
|
||||
}
|
||||
|
||||
@@ -1225,17 +1225,17 @@ COMMAND_HANDLER(mg_config_cmd)
|
||||
|
||||
switch (CMD_ARGC) {
|
||||
case 2:
|
||||
if (!strcmp(args[1], "boot"))
|
||||
if (!strcmp(CMD_ARGV[1], "boot"))
|
||||
return mg_boot_config();
|
||||
else if (!strcmp(args[1], "storage"))
|
||||
else if (!strcmp(CMD_ARGV[1], "storage"))
|
||||
return mg_storage_config();
|
||||
else
|
||||
return ERROR_COMMAND_NOTFOUND;
|
||||
break;
|
||||
case 3:
|
||||
if (!strcmp(args[1], "pll")) {
|
||||
if (!strcmp(CMD_ARGV[1], "pll")) {
|
||||
unsigned long freq;
|
||||
COMMAND_PARSE_NUMBER(ulong, args[2], freq);
|
||||
COMMAND_PARSE_NUMBER(ulong, CMD_ARGV[2], freq);
|
||||
fin = freq;
|
||||
|
||||
if (fin > MG_PLL_CLK_OUT) {
|
||||
@@ -1293,30 +1293,30 @@ COMMAND_HANDLER(mg_bank_cmd)
|
||||
return ERROR_COMMAND_SYNTAX_ERROR;
|
||||
}
|
||||
|
||||
if ((target = get_target(args[3])) == NULL)
|
||||
if ((target = get_target(CMD_ARGV[3])) == NULL)
|
||||
{
|
||||
LOG_ERROR("target '%s' not defined", args[3]);
|
||||
LOG_ERROR("target '%s' not defined", CMD_ARGV[3]);
|
||||
return ERROR_FAIL;
|
||||
}
|
||||
|
||||
mflash_bank = calloc(sizeof(struct mflash_bank), 1);
|
||||
COMMAND_PARSE_NUMBER(u32, args[1], mflash_bank->base);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[1], mflash_bank->base);
|
||||
/// @todo Verify how this parsing should work, then document it.
|
||||
char *str;
|
||||
mflash_bank->rst_pin.num = strtoul(args[2], &str, 0);
|
||||
mflash_bank->rst_pin.num = strtoul(CMD_ARGV[2], &str, 0);
|
||||
if (*str)
|
||||
mflash_bank->rst_pin.port[0] = (uint16_t)tolower(str[0]);
|
||||
|
||||
mflash_bank->target = target;
|
||||
|
||||
for (i = 0; mflash_gpio[i] ; i++) {
|
||||
if (! strcmp(mflash_gpio[i]->name, args[0])) {
|
||||
if (! strcmp(mflash_gpio[i]->name, CMD_ARGV[0])) {
|
||||
mflash_bank->gpio_drv = mflash_gpio[i];
|
||||
}
|
||||
}
|
||||
|
||||
if (! mflash_bank->gpio_drv) {
|
||||
LOG_ERROR("%s is unsupported soc", args[0]);
|
||||
LOG_ERROR("%s is unsupported soc", CMD_ARGV[0]);
|
||||
return ERROR_MG_UNSUPPORTED_SOC;
|
||||
}
|
||||
|
||||
|
||||
@@ -73,10 +73,10 @@ NAND_DEVICE_COMMAND_HANDLER(imx31_nand_device_command)
|
||||
|
||||
nand->controller_priv = mx3_nf_info;
|
||||
|
||||
mx3_nf_info->target = get_target (args[1]);
|
||||
mx3_nf_info->target = get_target (CMD_ARGV[1]);
|
||||
if (mx3_nf_info->target == NULL)
|
||||
{
|
||||
LOG_ERROR ("target '%s' not defined", args[1]);
|
||||
LOG_ERROR ("target '%s' not defined", CMD_ARGV[1]);
|
||||
return ERROR_FAIL;
|
||||
}
|
||||
if (CMD_ARGC < 3)
|
||||
@@ -89,7 +89,7 @@ NAND_DEVICE_COMMAND_HANDLER(imx31_nand_device_command)
|
||||
*/
|
||||
{
|
||||
int hwecc_needed;
|
||||
hwecc_needed = strcmp (args[2], "hwecc");
|
||||
hwecc_needed = strcmp (CMD_ARGV[2], "hwecc");
|
||||
if (hwecc_needed == 0)
|
||||
{
|
||||
mx3_nf_info->flags.hw_ecc_enabled = 1;
|
||||
|
||||
@@ -220,12 +220,12 @@ COMMAND_HANDLER(handle_nand_device_command)
|
||||
{
|
||||
struct nand_device *p, *c;
|
||||
|
||||
if (strcmp(args[0], nand_flash_controllers[i]->name) == 0)
|
||||
if (strcmp(CMD_ARGV[0], nand_flash_controllers[i]->name) == 0)
|
||||
{
|
||||
/* register flash specific commands */
|
||||
if ((retval = nand_flash_controllers[i]->register_commands(cmd_ctx)) != ERROR_OK)
|
||||
{
|
||||
LOG_ERROR("couldn't register '%s' commands", args[0]);
|
||||
LOG_ERROR("couldn't register '%s' commands", CMD_ARGV[0]);
|
||||
return retval;
|
||||
}
|
||||
|
||||
@@ -269,7 +269,7 @@ COMMAND_HANDLER(handle_nand_device_command)
|
||||
/* no valid NAND controller was found (i.e. the configuration option,
|
||||
* didn't match one of the compiled-in controllers)
|
||||
*/
|
||||
LOG_ERROR("No valid NAND flash controller found (%s)", args[0]);
|
||||
LOG_ERROR("No valid NAND flash controller found (%s)", CMD_ARGV[0]);
|
||||
LOG_ERROR("compiled-in NAND flash controllers:");
|
||||
for (i = 0; nand_flash_controllers[i]; i++)
|
||||
{
|
||||
@@ -307,7 +307,7 @@ struct nand_device *get_nand_device_by_num(int num)
|
||||
COMMAND_HELPER(nand_command_get_device_by_num, unsigned name_index,
|
||||
struct nand_device **nand)
|
||||
{
|
||||
const char *str = args[name_index];
|
||||
const char *str = CMD_ARGV[name_index];
|
||||
unsigned num;
|
||||
COMMAND_PARSE_NUMBER(uint, str, num);
|
||||
*nand = get_nand_device_by_num(num);
|
||||
@@ -1090,19 +1090,19 @@ COMMAND_HANDLER(handle_nand_info_command)
|
||||
last = INT32_MAX;
|
||||
break;
|
||||
case 2:
|
||||
COMMAND_PARSE_NUMBER(int, args[1], i);
|
||||
COMMAND_PARSE_NUMBER(int, CMD_ARGV[1], i);
|
||||
first = last = i;
|
||||
i = 0;
|
||||
break;
|
||||
case 3:
|
||||
COMMAND_PARSE_NUMBER(int, args[1], first);
|
||||
COMMAND_PARSE_NUMBER(int, args[2], last);
|
||||
COMMAND_PARSE_NUMBER(int, CMD_ARGV[1], first);
|
||||
COMMAND_PARSE_NUMBER(int, CMD_ARGV[2], last);
|
||||
break;
|
||||
}
|
||||
|
||||
if (NULL == p->device)
|
||||
{
|
||||
command_print(cmd_ctx, "#%s: not probed", args[0]);
|
||||
command_print(cmd_ctx, "#%s: not probed", CMD_ARGV[0]);
|
||||
return ERROR_OK;
|
||||
}
|
||||
|
||||
@@ -1193,11 +1193,11 @@ COMMAND_HANDLER(handle_nand_erase_command)
|
||||
if (CMD_ARGC == 3) {
|
||||
unsigned long size = p->erase_size * p->num_blocks;
|
||||
|
||||
COMMAND_PARSE_NUMBER(ulong, args[1], offset);
|
||||
COMMAND_PARSE_NUMBER(ulong, CMD_ARGV[1], offset);
|
||||
if ((offset % p->erase_size) != 0 || offset >= size)
|
||||
return ERROR_INVALID_ARGUMENTS;
|
||||
|
||||
COMMAND_PARSE_NUMBER(ulong, args[2], length);
|
||||
COMMAND_PARSE_NUMBER(ulong, CMD_ARGV[2], length);
|
||||
if ((length == 0) || (length % p->erase_size) != 0
|
||||
|| (length + offset) > size)
|
||||
return ERROR_INVALID_ARGUMENTS;
|
||||
@@ -1215,7 +1215,7 @@ COMMAND_HANDLER(handle_nand_erase_command)
|
||||
command_print(cmd_ctx, "erased blocks %lu to %lu "
|
||||
"on NAND flash device #%s '%s'",
|
||||
offset, offset + length,
|
||||
args[0], p->device->name);
|
||||
CMD_ARGV[0], p->device->name);
|
||||
}
|
||||
else if (retval == ERROR_NAND_OPERATION_FAILED)
|
||||
{
|
||||
@@ -1250,12 +1250,12 @@ COMMAND_HANDLER(handle_nand_check_bad_blocks_command)
|
||||
unsigned long offset;
|
||||
unsigned long length;
|
||||
|
||||
COMMAND_PARSE_NUMBER(ulong, args[1], offset);
|
||||
COMMAND_PARSE_NUMBER(ulong, CMD_ARGV[1], offset);
|
||||
if (offset % p->erase_size)
|
||||
return ERROR_INVALID_ARGUMENTS;
|
||||
offset /= p->erase_size;
|
||||
|
||||
COMMAND_PARSE_NUMBER(ulong, args[2], length);
|
||||
COMMAND_PARSE_NUMBER(ulong, CMD_ARGV[2], length);
|
||||
if (length % p->erase_size)
|
||||
return ERROR_INVALID_ARGUMENTS;
|
||||
|
||||
@@ -1399,14 +1399,14 @@ static COMMAND_HELPER(nand_fileio_parse_args, struct nand_fileio_state *state,
|
||||
|
||||
if (NULL == nand->device)
|
||||
{
|
||||
command_print(cmd_ctx, "#%s: not probed", args[0]);
|
||||
command_print(cmd_ctx, "#%s: not probed", CMD_ARGV[0]);
|
||||
return ERROR_OK;
|
||||
}
|
||||
|
||||
COMMAND_PARSE_NUMBER(u32, args[2], state->address);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[2], state->address);
|
||||
if (need_size)
|
||||
{
|
||||
COMMAND_PARSE_NUMBER(u32, args[2], state->size);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[2], state->size);
|
||||
if (state->size % nand->page_size)
|
||||
{
|
||||
command_print(cmd_ctx, "only page-aligned sizes are supported");
|
||||
@@ -1418,23 +1418,23 @@ static COMMAND_HELPER(nand_fileio_parse_args, struct nand_fileio_state *state,
|
||||
{
|
||||
for (unsigned i = minargs; i < CMD_ARGC; i++)
|
||||
{
|
||||
if (!strcmp(args[i], "oob_raw"))
|
||||
if (!strcmp(CMD_ARGV[i], "oob_raw"))
|
||||
state->oob_format |= NAND_OOB_RAW;
|
||||
else if (!strcmp(args[i], "oob_only"))
|
||||
else if (!strcmp(CMD_ARGV[i], "oob_only"))
|
||||
state->oob_format |= NAND_OOB_RAW | NAND_OOB_ONLY;
|
||||
else if (sw_ecc && !strcmp(args[i], "oob_softecc"))
|
||||
else if (sw_ecc && !strcmp(CMD_ARGV[i], "oob_softecc"))
|
||||
state->oob_format |= NAND_OOB_SW_ECC;
|
||||
else if (sw_ecc && !strcmp(args[i], "oob_softecc_kw"))
|
||||
else if (sw_ecc && !strcmp(CMD_ARGV[i], "oob_softecc_kw"))
|
||||
state->oob_format |= NAND_OOB_SW_ECC_KW;
|
||||
else
|
||||
{
|
||||
command_print(cmd_ctx, "unknown option: %s", args[i]);
|
||||
command_print(cmd_ctx, "unknown option: %s", CMD_ARGV[i]);
|
||||
return ERROR_COMMAND_SYNTAX_ERROR;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
retval = nand_fileio_start(cmd_ctx, nand, args[1], filemode, state);
|
||||
retval = nand_fileio_start(cmd_ctx, nand, CMD_ARGV[1], filemode, state);
|
||||
if (ERROR_OK != retval)
|
||||
return retval;
|
||||
|
||||
@@ -1528,7 +1528,7 @@ COMMAND_HANDLER(handle_nand_write_command)
|
||||
{
|
||||
command_print(cmd_ctx, "failed writing file %s "
|
||||
"to NAND flash %s at offset 0x%8.8" PRIx32,
|
||||
args[1], args[0], s.address);
|
||||
CMD_ARGV[1], CMD_ARGV[0], s.address);
|
||||
return nand_fileio_cleanup(&s);
|
||||
}
|
||||
s.address += s.page_size;
|
||||
@@ -1538,7 +1538,7 @@ COMMAND_HANDLER(handle_nand_write_command)
|
||||
{
|
||||
command_print(cmd_ctx, "wrote file %s to NAND flash %s up to "
|
||||
"offset 0x%8.8" PRIx32 " in %fs (%0.3f kb/s)",
|
||||
args[1], args[0], s.address, duration_elapsed(&s.bench),
|
||||
CMD_ARGV[1], CMD_ARGV[0], s.address, duration_elapsed(&s.bench),
|
||||
duration_kbps(&s.bench, total_bytes));
|
||||
}
|
||||
return ERROR_OK;
|
||||
@@ -1598,7 +1598,7 @@ COMMAND_HANDLER(handle_nand_verify_command)
|
||||
{
|
||||
command_print(cmd_ctx, "verified file %s in NAND flash %s "
|
||||
"up to offset 0x%8.8" PRIx32 " in %fs (%0.3f kb/s)",
|
||||
args[1], args[0], dev.address, duration_elapsed(&file.bench),
|
||||
CMD_ARGV[1], CMD_ARGV[0], dev.address, duration_elapsed(&file.bench),
|
||||
duration_kbps(&file.bench, dev.size));
|
||||
}
|
||||
|
||||
@@ -1658,15 +1658,15 @@ COMMAND_HANDLER(handle_nand_raw_access_command)
|
||||
|
||||
if (NULL == p->device)
|
||||
{
|
||||
command_print(cmd_ctx, "#%s: not probed", args[0]);
|
||||
command_print(cmd_ctx, "#%s: not probed", CMD_ARGV[0]);
|
||||
return ERROR_OK;
|
||||
}
|
||||
|
||||
if (CMD_ARGC == 2)
|
||||
{
|
||||
if (strcmp("enable", args[1]) == 0)
|
||||
if (strcmp("enable", CMD_ARGV[1]) == 0)
|
||||
p->use_raw = 1;
|
||||
else if (strcmp("disable", args[1]) == 0)
|
||||
else if (strcmp("disable", CMD_ARGV[1]) == 0)
|
||||
p->use_raw = 0;
|
||||
else
|
||||
return ERROR_COMMAND_SYNTAX_ERROR;
|
||||
|
||||
@@ -143,14 +143,14 @@ NAND_DEVICE_COMMAND_HANDLER(orion_nand_device_command)
|
||||
}
|
||||
|
||||
nand->controller_priv = hw;
|
||||
hw->target = get_target(args[1]);
|
||||
hw->target = get_target(CMD_ARGV[1]);
|
||||
if (!hw->target) {
|
||||
LOG_ERROR("target '%s' not defined", args[1]);
|
||||
LOG_ERROR("target '%s' not defined", CMD_ARGV[1]);
|
||||
free(hw);
|
||||
return ERROR_NAND_DEVICE_INVALID;
|
||||
}
|
||||
|
||||
COMMAND_PARSE_NUMBER(u32, args[2], base);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[2], base);
|
||||
cle = 0;
|
||||
ale = 1;
|
||||
|
||||
|
||||
@@ -854,8 +854,8 @@ COMMAND_HANDLER(pic32mx_handle_pgm_word_command)
|
||||
return ERROR_OK;
|
||||
}
|
||||
|
||||
COMMAND_PARSE_NUMBER(u32, args[0], address);
|
||||
COMMAND_PARSE_NUMBER(u32, args[1], value);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[0], address);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[1], value);
|
||||
|
||||
struct flash_bank *bank;
|
||||
int retval = CALL_COMMAND_HANDLER(flash_command_get_bank_by_num, 2, &bank);
|
||||
@@ -864,7 +864,7 @@ COMMAND_HANDLER(pic32mx_handle_pgm_word_command)
|
||||
|
||||
if (address < bank->base || address >= (bank->base + bank->size))
|
||||
{
|
||||
command_print(cmd_ctx, "flash address '%s' is out of bounds", args[0]);
|
||||
command_print(cmd_ctx, "flash address '%s' is out of bounds", CMD_ARGV[0]);
|
||||
return ERROR_OK;
|
||||
}
|
||||
|
||||
|
||||
@@ -43,9 +43,9 @@ S3C24XX_DEVICE_COMMAND()
|
||||
|
||||
nand->controller_priv = s3c24xx_info;
|
||||
|
||||
s3c24xx_info->target = get_target(args[1]);
|
||||
s3c24xx_info->target = get_target(CMD_ARGV[1]);
|
||||
if (s3c24xx_info->target == NULL) {
|
||||
LOG_ERROR("target '%s' not defined", args[1]);
|
||||
LOG_ERROR("target '%s' not defined", CMD_ARGV[1]);
|
||||
return ERROR_COMMAND_SYNTAX_ERROR;
|
||||
}
|
||||
|
||||
|
||||
@@ -1065,7 +1065,7 @@ COMMAND_HANDLER(stm32x_handle_options_write_command)
|
||||
return ERROR_TARGET_NOT_HALTED;
|
||||
}
|
||||
|
||||
if (strcmp(args[1], "SWWDG") == 0)
|
||||
if (strcmp(CMD_ARGV[1], "SWWDG") == 0)
|
||||
{
|
||||
optionbyte |= (1 << 0);
|
||||
}
|
||||
@@ -1074,7 +1074,7 @@ COMMAND_HANDLER(stm32x_handle_options_write_command)
|
||||
optionbyte &= ~(1 << 0);
|
||||
}
|
||||
|
||||
if (strcmp(args[2], "NORSTSTNDBY") == 0)
|
||||
if (strcmp(CMD_ARGV[2], "NORSTSTNDBY") == 0)
|
||||
{
|
||||
optionbyte |= (1 << 1);
|
||||
}
|
||||
@@ -1083,7 +1083,7 @@ COMMAND_HANDLER(stm32x_handle_options_write_command)
|
||||
optionbyte &= ~(1 << 1);
|
||||
}
|
||||
|
||||
if (strcmp(args[3], "NORSTSTOP") == 0)
|
||||
if (strcmp(CMD_ARGV[3], "NORSTSTOP") == 0)
|
||||
{
|
||||
optionbyte |= (1 << 2);
|
||||
}
|
||||
|
||||
@@ -127,23 +127,23 @@ FLASH_BANK_COMMAND_HANDLER(str7x_flash_bank_command)
|
||||
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;
|
||||
}
|
||||
|
||||
@@ -647,10 +647,10 @@ COMMAND_HANDLER(str9x_handle_flash_config_command)
|
||||
return retval;
|
||||
|
||||
uint32_t bbsr, nbbsr, bbadr, nbbadr;
|
||||
COMMAND_PARSE_NUMBER(u32, args[1], bbsr);
|
||||
COMMAND_PARSE_NUMBER(u32, args[2], nbbsr);
|
||||
COMMAND_PARSE_NUMBER(u32, args[3], bbadr);
|
||||
COMMAND_PARSE_NUMBER(u32, args[4], nbbadr);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[1], bbsr);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[2], nbbsr);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[3], bbadr);
|
||||
COMMAND_PARSE_NUMBER(u32, CMD_ARGV[4], nbbadr);
|
||||
|
||||
str9x_info = bank->driver_priv;
|
||||
|
||||
|
||||
@@ -934,7 +934,7 @@ COMMAND_HANDLER(str9xpec_handle_flash_options_cmap_command)
|
||||
|
||||
str9xpec_info = bank->driver_priv;
|
||||
|
||||
if (strcmp(args[1], "bank1") == 0)
|
||||
if (strcmp(CMD_ARGV[1], "bank1") == 0)
|
||||
{
|
||||
buf_set_u32(str9xpec_info->options, STR9XPEC_OPT_CSMAPBIT, 1, 1);
|
||||
}
|
||||
@@ -963,7 +963,7 @@ COMMAND_HANDLER(str9xpec_handle_flash_options_lvdthd_command)
|
||||
|
||||
str9xpec_info = bank->driver_priv;
|
||||
|
||||
if (strcmp(args[1], "2.7v") == 0)
|
||||
if (strcmp(CMD_ARGV[1], "2.7v") == 0)
|
||||
{
|
||||
buf_set_u32(str9xpec_info->options, STR9XPEC_OPT_LVDTHRESBIT, 1, 1);
|
||||
}
|
||||
@@ -992,7 +992,7 @@ COMMAND_HANDLER(str9xpec_handle_flash_options_lvdsel_command)
|
||||
|
||||
str9xpec_info = bank->driver_priv;
|
||||
|
||||
if (strcmp(args[1], "vdd_vddq") == 0)
|
||||
if (strcmp(CMD_ARGV[1], "vdd_vddq") == 0)
|
||||
{
|
||||
buf_set_u32(str9xpec_info->options, STR9XPEC_OPT_LVDSELBIT, 1, 1);
|
||||
}
|
||||
@@ -1021,7 +1021,7 @@ COMMAND_HANDLER(str9xpec_handle_flash_options_lvdwarn_command)
|
||||
|
||||
str9xpec_info = bank->driver_priv;
|
||||
|
||||
if (strcmp(args[1], "vdd_vddq") == 0)
|
||||
if (strcmp(CMD_ARGV[1], "vdd_vddq") == 0)
|
||||
{
|
||||
buf_set_u32(str9xpec_info->options, STR9XPEC_OPT_LVDWARNBIT, 1, 1);
|
||||
}
|
||||
|
||||
@@ -302,12 +302,12 @@ COMMAND_HANDLER(tms470_handle_flash_keyset_command)
|
||||
|
||||
for (i = 0; i < 4; i++)
|
||||
{
|
||||
int start = (0 == strncmp(args[i], "0x", 2)) ? 2 : 0;
|
||||
int start = (0 == strncmp(CMD_ARGV[i], "0x", 2)) ? 2 : 0;
|
||||
|
||||
if (1 != sscanf(&args[i][start], "%" SCNx32 "", &flashKeys[i]))
|
||||
if (1 != sscanf(&CMD_ARGV[i][start], "%" SCNx32 "", &flashKeys[i]))
|
||||
{
|
||||
command_print(cmd_ctx, "could not process flash key %s", args[i]);
|
||||
LOG_ERROR("could not process flash key %s", args[i]);
|
||||
command_print(cmd_ctx, "could not process flash key %s", CMD_ARGV[i]);
|
||||
LOG_ERROR("could not process flash key %s", CMD_ARGV[i]);
|
||||
return ERROR_INVALID_ARGUMENTS;
|
||||
}
|
||||
}
|
||||
@@ -362,7 +362,7 @@ COMMAND_HANDLER(tms470_handle_osc_megahertz_command)
|
||||
}
|
||||
else if (CMD_ARGC == 1)
|
||||
{
|
||||
sscanf(args[0], "%d", &oscMHz);
|
||||
sscanf(CMD_ARGV[0], "%d", &oscMHz);
|
||||
}
|
||||
|
||||
if (oscMHz <= 0)
|
||||
@@ -391,7 +391,7 @@ COMMAND_HANDLER(tms470_handle_plldis_command)
|
||||
}
|
||||
else if (CMD_ARGC == 1)
|
||||
{
|
||||
sscanf(args[0], "%d", &plldis);
|
||||
sscanf(CMD_ARGV[0], "%d", &plldis);
|
||||
plldis = plldis ? 1 : 0;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user