diff options
Diffstat (limited to 'cmd/dfu.c')
-rw-r--r-- | cmd/dfu.c | 18 |
1 files changed, 13 insertions, 5 deletions
@@ -25,12 +25,14 @@ static int do_dfu(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) if (argc < 4) return CMD_RET_USAGE; +#ifdef CONFIG_USB_FUNCTION_DFU char *usb_controller = argv[1]; +#endif char *interface = argv[2]; char *devstring = argv[3]; - int ret; -#ifdef CONFIG_DFU_TFTP + int ret = 0; +#ifdef CONFIG_TFTP_FUNCTION_DFU unsigned long addr = 0; if (!strcmp(argv[1], "tftp")) { if (argc == 5) @@ -39,7 +41,7 @@ static int do_dfu(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) return update_tftp(addr, interface, devstring); } #endif - +#ifdef CONFIG_USB_FUNCTION_DFU ret = dfu_init_env_entities(interface, devstring); if (ret) goto done; @@ -56,18 +58,24 @@ static int do_dfu(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) done: dfu_free_entities(); +#endif return ret; } U_BOOT_CMD(dfu, CONFIG_SYS_MAXARGS, 1, do_dfu, "Device Firmware Upgrade", +#ifdef CONFIG_USB_FUNCTION_DFU "<USB_controller> <interface> <dev> [list]\n" " - device firmware upgrade via <USB_controller>\n" " on device <dev>, attached to interface\n" " <interface>\n" " [list] - list available alt settings\n" -#ifdef CONFIG_DFU_TFTP - "dfu tftp <interface> <dev> [<addr>]\n" +#endif +#ifdef CONFIG_TFTP_FUNCTION_DFU +#ifdef CONFIG_USB_FUNCTION_DFU + "dfu " +#endif + "tftp <interface> <dev> [<addr>]\n" " - device firmware upgrade via TFTP\n" " on device <dev>, attached to interface\n" " <interface>\n" |