X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=cmd%2Fusb_mass_storage.c;h=c5c6899787c84a746afb30317433ab9c779f39e8;hb=dd9056c06a0557bc08ca986530024568e01ede6f;hp=89b9ddfbb9e6c5b66c3901ffc821b54aecf677f7;hpb=e8f80a5a58c9b506453cc0780687e8ed457d30a6;p=oweals%2Fu-boot.git diff --git a/cmd/usb_mass_storage.c b/cmd/usb_mass_storage.c index 89b9ddfbb9..c5c6899787 100644 --- a/cmd/usb_mass_storage.c +++ b/cmd/usb_mass_storage.c @@ -11,9 +11,11 @@ #include #include #include +#include #include #include #include +#include static int ums_read_sector(struct ums *ums_dev, ulong start, lbaint_t blkcnt, void *buf) @@ -160,22 +162,22 @@ static int do_usb_mass_storage(cmd_tbl_t *cmdtp, int flag, controller_index = (unsigned int)(simple_strtoul( usb_controller, NULL, 0)); - if (board_usb_init(controller_index, USB_INIT_DEVICE)) { - pr_err("Couldn't init USB controller."); + if (usb_gadget_initialize(controller_index)) { + pr_err("Couldn't init USB controller.\n"); rc = CMD_RET_FAILURE; goto cleanup_ums_init; } rc = fsg_init(ums, ums_count); if (rc) { - pr_err("fsg_init failed"); + pr_err("fsg_init failed\n"); rc = CMD_RET_FAILURE; goto cleanup_board; } rc = g_dnl_register("usb_dnl_ums"); if (rc) { - pr_err("g_dnl_register failed"); + pr_err("g_dnl_register failed\n"); rc = CMD_RET_FAILURE; goto cleanup_board; } @@ -226,12 +228,14 @@ static int do_usb_mass_storage(cmd_tbl_t *cmdtp, int flag, rc = CMD_RET_SUCCESS; goto cleanup_register; } + + WATCHDOG_RESET(); } cleanup_register: g_dnl_unregister(); cleanup_board: - board_usb_cleanup(controller_index, USB_INIT_DEVICE); + usb_gadget_release(controller_index); cleanup_ums_init: ums_fini();