1 // SPDX-License-Identifier: GPL-2.0+
3 * cmd_thordown.c -- USB TIZEN "THOR" Downloader gadget
5 * Copyright (C) 2013 Lukasz Majewski <l.majewski@samsung.com>
14 #include <linux/printk.h>
16 int do_thor_down(struct cmd_tbl
*cmdtp
, int flag
, int argc
, char *const argv
[])
18 char *interface
, *devstring
;
26 puts("TIZEN \"THOR\" Downloader\n");
31 ret
= dfu_init_env_entities(interface
, devstring
);
35 controller_index
= simple_strtoul(argv
[1], NULL
, 0);
36 ret
= udc_device_get_by_index(controller_index
, &udc
);
38 pr_err("USB init failed: %d\n", ret
);
39 ret
= CMD_RET_FAILURE
;
43 ret
= g_dnl_register("usb_dnl_thor");
45 pr_err("g_dnl_register failed %d\n", ret
);
46 ret
= CMD_RET_FAILURE
;
52 pr_err("THOR DOWNLOAD failed: %d\n", ret
);
53 ret
= CMD_RET_FAILURE
;
58 ret
= thor_handle(udc
);
59 if (ret
== THOR_DFU_REINIT_NEEDED
) {
61 ret
= dfu_init_env_entities(interface
, devstring
);
64 pr_err("THOR failed: %d\n", ret
);
65 ret
= CMD_RET_FAILURE
;
78 U_BOOT_CMD(thordown
, CONFIG_SYS_MAXARGS
, 1, do_thor_down
,
79 "TIZEN \"THOR\" downloader",
80 "<USB_controller> <interface> <dev>\n"
81 " - device software upgrade via LTHOR TIZEN download\n"
82 " program via <USB_controller> on device <dev>,\n"
83 " attached to interface <interface>\n"