From: Przemyslaw Marczak Date: Thu, 12 Jun 2014 08:20:59 +0000 (+0200) Subject: thor:cmd: get the default command arguments from environment X-Git-Tag: submit/tizen/20160419.084959~34 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=8d370af50c6fee008f158cef0fbde901a4711ef9;p=profile%2Fcommon%2Fplatform%2Fkernel%2Fu-boot-artik.git thor:cmd: get the default command arguments from environment This change adds support to getting the default DFU cmd line arguments from the environment. DFU and THOR uses the same command line arguments, so the DFU command environment setup can be used also with THOR. Signed-off-by: Przemyslaw Marczak Conflicts: common/cmd_thordown.c [jino.cho: Fixed conflicts from original commit of tizen.org] Signed-off-by: jino.cho Change-Id: I167927ff47f7c105fd1794da21c6742a10c7593a --- diff --git a/common/cmd_thordown.c b/common/cmd_thordown.c index 436b7f563..f0e50436d 100644 --- a/common/cmd_thordown.c +++ b/common/cmd_thordown.c @@ -15,17 +15,34 @@ int do_thor_down(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) { - if (argc < 4) - return CMD_RET_USAGE; - - char *usb_controller = argv[1]; - char *interface = argv[2]; - char *devstring = argv[3]; - + char *usb_controller; + char *interface; + char *devstring; int ret; puts("TIZEN \"THOR\" Downloader\n"); + switch (argc) { + case 1: + usb_controller = strdup(getenv("dfu_usb_con")); + interface = strdup(getenv("dfu_interface")); + devstring = strdup(getenv("dfu_device")); + + if (!usb_controller || !interface || !devstring) { + puts("DFU: default device environment is not set.\n"); + ret = CMD_RET_USAGE; + goto bad_args; + } + break; + case 4: + usb_controller = argv[1]; + interface = argv[2]; + devstring = argv[3]; + break; + default: + return CMD_RET_USAGE; + } + ret = dfu_init_env_entities(interface, devstring); if (ret) goto done; @@ -60,6 +77,12 @@ exit: done: dfu_free_entities(); +bad_args: + if (argc == 1) { + free(usb_controller); + free(interface); + free(devstring); + } return ret; }