int i;
int retval;
- if (argc < 1)
+ if (CMD_ARGC < 1)
{
LOG_WARNING("incomplete flash device nand configuration");
return ERROR_FLASH_BANK_INVALID;
return NULL;
}
-int nand_command_get_device_by_num(struct command_context *cmd_ctx,
- const char *str, struct nand_device **nand)
+COMMAND_HELPER(nand_command_get_device_by_num, unsigned name_index,
+ struct nand_device **nand)
{
+ const char *str = args[name_index];
unsigned num;
COMMAND_PARSE_NUMBER(uint, str, num);
*nand = get_nand_device_by_num(num);
int last = -1;
struct nand_device *p;
- int retval = nand_command_get_device_by_num(cmd_ctx, args[0], &p);
+ int retval = CALL_COMMAND_HANDLER(nand_command_get_device_by_num, 0, &p);
if (ERROR_OK != retval)
return retval;
- switch (argc) {
+ switch (CMD_ARGC) {
default:
return ERROR_COMMAND_SYNTAX_ERROR;
case 1:
COMMAND_HANDLER(handle_nand_probe_command)
{
- if (argc != 1)
+ if (CMD_ARGC != 1)
{
return ERROR_COMMAND_SYNTAX_ERROR;
}
struct nand_device *p;
- int retval = nand_command_get_device_by_num(cmd_ctx, args[0], &p);
+ int retval = CALL_COMMAND_HANDLER(nand_command_get_device_by_num, 0, &p);
if (ERROR_OK != retval)
return retval;
COMMAND_HANDLER(handle_nand_erase_command)
{
- if (argc != 1 && argc != 3)
+ if (CMD_ARGC != 1 && CMD_ARGC != 3)
{
return ERROR_COMMAND_SYNTAX_ERROR;
}
struct nand_device *p;
- int retval = nand_command_get_device_by_num(cmd_ctx, args[0], &p);
+ int retval = CALL_COMMAND_HANDLER(nand_command_get_device_by_num, 0, &p);
if (ERROR_OK != retval)
return retval;
unsigned long length;
/* erase specified part of the chip; or else everything */
- if (argc == 3) {
+ if (CMD_ARGC == 3) {
unsigned long size = p->erase_size * p->num_blocks;
COMMAND_PARSE_NUMBER(ulong, args[1], offset);
int first = -1;
int last = -1;
- if ((argc < 1) || (argc > 3) || (argc == 2))
+ if ((CMD_ARGC < 1) || (CMD_ARGC > 3) || (CMD_ARGC == 2))
{
return ERROR_COMMAND_SYNTAX_ERROR;
}
struct nand_device *p;
- int retval = nand_command_get_device_by_num(cmd_ctx, args[0], &p);
+ int retval = CALL_COMMAND_HANDLER(nand_command_get_device_by_num, 0, &p);
if (ERROR_OK != retval)
return retval;
- if (argc == 3)
+ if (CMD_ARGC == 3)
{
unsigned long offset;
unsigned long length;
nand_fileio_init(state);
unsigned minargs = need_size ? 4 : 3;
- if (argc < minargs)
+ if (CMD_ARGC < minargs)
return ERROR_COMMAND_SYNTAX_ERROR;
struct nand_device *nand;
- int retval = nand_command_get_device_by_num(cmd_ctx, args[0], &nand);
+ int retval = CALL_COMMAND_HANDLER(nand_command_get_device_by_num, 0, &nand);
if (ERROR_OK != retval)
return retval;
}
}
- if (argc > minargs)
+ if (CMD_ARGC > minargs)
{
- for (unsigned i = minargs; i < argc; i++)
+ for (unsigned i = minargs; i < CMD_ARGC; i++)
{
if (!strcmp(args[i], "oob_raw"))
state->oob_format |= NAND_OOB_RAW;
static int nand_fileio_read(struct nand_device *nand,
struct nand_fileio_state *s)
{
- uint32_t total_read = 0;
- uint32_t one_read;
+ size_t total_read = 0;
+ size_t one_read;
if (NULL != s->page)
{
while (s.size > 0)
{
- uint32_t size_written;
+ size_t size_written;
int retval = nand_read_page(nand, s.address / nand->page_size,
s.page, s.page_size, s.oob, s.oob_size);
if (ERROR_OK != retval)
if (nand_fileio_finish(&s) == ERROR_OK)
{
- command_print(cmd_ctx, "dumped %lld byte in %fs (%0.3f kb/s)",
+ command_print(cmd_ctx, "dumped %zu bytes in %fs (%0.3f kb/s)",
s.fileio.size, duration_elapsed(&s.bench),
duration_kbps(&s.bench, s.fileio.size));
}
COMMAND_HANDLER(handle_nand_raw_access_command)
{
- if ((argc < 1) || (argc > 2))
+ if ((CMD_ARGC < 1) || (CMD_ARGC > 2))
{
return ERROR_COMMAND_SYNTAX_ERROR;
}
struct nand_device *p;
- int retval = nand_command_get_device_by_num(cmd_ctx, args[0], &p);
+ int retval = CALL_COMMAND_HANDLER(nand_command_get_device_by_num, 0, &p);
if (ERROR_OK != retval)
return retval;
return ERROR_OK;
}
- if (argc == 2)
+ if (CMD_ARGC == 2)
{
if (strcmp("enable", args[1]) == 0)
p->use_raw = 1;