Lines Matching refs:cmdtp
21 int _do_help(cmd_tbl_t *cmd_start, int cmd_items, cmd_tbl_t *cmdtp, int flag, in _do_help() argument
32 cmdtp = cmd_start; in _do_help()
34 cmd_array[i] = cmdtp++; in _do_help()
72 cmdtp = find_cmd_tbl(argv[i], cmd_start, cmd_items); in _do_help()
73 if (cmdtp != NULL) { in _do_help()
74 rcode |= cmd_usage(cmdtp); in _do_help()
88 cmd_tbl_t *cmdtp; in find_cmd_tbl() local
102 for (cmdtp = table; cmdtp != table + table_len; cmdtp++) { in find_cmd_tbl()
103 if (strncmp(cmd, cmdtp->name, len) == 0) { in find_cmd_tbl()
104 if (len == strlen(cmdtp->name)) in find_cmd_tbl()
105 return cmdtp; /* full match */ in find_cmd_tbl()
107 cmdtp_temp = cmdtp; /* abbreviated command ? */ in find_cmd_tbl()
126 int cmd_usage(const cmd_tbl_t *cmdtp) in cmd_usage() argument
128 printf("%s - %s\n\n", cmdtp->name, cmdtp->usage); in cmd_usage()
131 printf("Usage:\n%s ", cmdtp->name); in cmd_usage()
133 if (!cmdtp->help) { in cmd_usage()
138 puts(cmdtp->help); in cmd_usage()
167 cmd_tbl_t *cmdtp = ll_entry_start(cmd_tbl_t, cmd); in complete_cmdv() local
169 const cmd_tbl_t *cmdend = cmdtp + count; in complete_cmdv()
183 for (; cmdtp != cmdend; cmdtp++) { in complete_cmdv()
188 cmdv[n_found++] = cmdtp->name; in complete_cmdv()
196 cmdtp = find_cmd(argv[0]); in complete_cmdv()
197 if (cmdtp == NULL || cmdtp->complete == NULL) { in complete_cmdv()
201 return (*cmdtp->complete)(argc, argv, last_char, maxv, cmdv); in complete_cmdv()
216 for (; cmdtp != cmdend; cmdtp++) { in complete_cmdv()
218 clen = strlen(cmdtp->name); in complete_cmdv()
222 if (memcmp(cmd, cmdtp->name, len) != 0) in complete_cmdv()
231 cmdv[n_found++] = cmdtp->name; in complete_cmdv()
443 void fixup_cmdtable(cmd_tbl_t *cmdtp, int size) in fixup_cmdtable() argument
453 addr = (ulong)(cmdtp->cmd) + gd->reloc_off; in fixup_cmdtable()
456 cmdtp->name, (ulong)(cmdtp->cmd), addr); in fixup_cmdtable()
458 cmdtp->cmd = in fixup_cmdtable()
460 addr = (ulong)(cmdtp->name) + gd->reloc_off; in fixup_cmdtable()
461 cmdtp->name = (char *)addr; in fixup_cmdtable()
462 if (cmdtp->usage) { in fixup_cmdtable()
463 addr = (ulong)(cmdtp->usage) + gd->reloc_off; in fixup_cmdtable()
464 cmdtp->usage = (char *)addr; in fixup_cmdtable()
467 if (cmdtp->help) { in fixup_cmdtable()
468 addr = (ulong)(cmdtp->help) + gd->reloc_off; in fixup_cmdtable()
469 cmdtp->help = (char *)addr; in fixup_cmdtable()
473 if (cmdtp->complete) { in fixup_cmdtable()
474 addr = (ulong)(cmdtp->complete) + gd->reloc_off; in fixup_cmdtable()
475 cmdtp->complete = in fixup_cmdtable()
479 cmdtp++; in fixup_cmdtable()
495 static int cmd_call(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) in cmd_call() argument
499 result = (cmdtp->cmd)(cmdtp, flag, argc, argv); in cmd_call()
509 cmd_tbl_t *cmdtp; in cmd_process() local
512 cmdtp = find_cmd(argv[0]); in cmd_process()
513 if (cmdtp == NULL) { in cmd_process()
519 if (argc > cmdtp->maxargs) in cmd_process()
524 else if (cmdtp->cmd == do_bootd) { in cmd_process()
538 rc = cmd_call(cmdtp, flag, argc, argv); in cmd_process()
541 *repeatable &= cmdtp->repeatable; in cmd_process()
544 rc = cmd_usage(cmdtp); in cmd_process()
548 int cmd_process_error(cmd_tbl_t *cmdtp, int err) in cmd_process_error() argument
551 printf("Command '%s' failed: Error %d\n", cmdtp->name, err); in cmd_process_error()