aboutsummaryrefslogtreecommitdiff
path: root/cmd
diff options
context:
space:
mode:
Diffstat (limited to 'cmd')
-rw-r--r--cmd/fastboot.c7
-rw-r--r--cmd/rockusb.c7
-rw-r--r--cmd/thordown.c24
-rw-r--r--cmd/usb_gadget_sdp.c15
-rw-r--r--cmd/usb_mass_storage.c10
5 files changed, 36 insertions, 27 deletions
diff --git a/cmd/fastboot.c b/cmd/fastboot.c
index 3d5ff951eb..17fb0a0aa7 100644
--- a/cmd/fastboot.c
+++ b/cmd/fastboot.c
@@ -61,6 +61,7 @@ static int do_fastboot_usb(int argc, char *const argv[],
{
int controller_index;
char *usb_controller;
+ struct udevice *udc;
char *endp;
int ret;
@@ -79,7 +80,7 @@ static int do_fastboot_usb(int argc, char *const argv[],
return CMD_RET_FAILURE;
}
- ret = usb_gadget_initialize(controller_index);
+ ret = udc_device_get_by_index(controller_index, &udc);
if (ret) {
pr_err("USB init failed: %d\n", ret);
return CMD_RET_FAILURE;
@@ -103,13 +104,13 @@ static int do_fastboot_usb(int argc, char *const argv[],
if (ctrlc())
break;
schedule();
- usb_gadget_handle_interrupts(controller_index);
+ dm_usb_gadget_handle_interrupts(udc);
}
ret = CMD_RET_SUCCESS;
exit:
- usb_gadget_release(controller_index);
+ udc_device_put(udc);
g_dnl_unregister();
g_dnl_clear_detach();
diff --git a/cmd/rockusb.c b/cmd/rockusb.c
index f181ec6111..07088564a1 100644
--- a/cmd/rockusb.c
+++ b/cmd/rockusb.c
@@ -15,6 +15,7 @@ static int do_rockusb(struct cmd_tbl *cmdtp, int flag, int argc,
{
int controller_index, dev_index;
char *usb_controller;
+ struct udevice *udc;
char *devtype;
char *devnum;
int ret;
@@ -34,7 +35,7 @@ static int do_rockusb(struct cmd_tbl *cmdtp, int flag, int argc,
dev_index = simple_strtoul(devnum, NULL, 0);
rockusb_dev_init(devtype, dev_index);
- ret = usb_gadget_initialize(controller_index);
+ ret = udc_device_get_by_index(controller_index, &udc);
if (ret) {
printf("USB init failed: %d\n", ret);
return CMD_RET_FAILURE;
@@ -56,14 +57,14 @@ static int do_rockusb(struct cmd_tbl *cmdtp, int flag, int argc,
break;
if (ctrlc())
break;
- usb_gadget_handle_interrupts(controller_index);
+ dm_usb_gadget_handle_interrupts(udc);
}
ret = CMD_RET_SUCCESS;
exit:
g_dnl_unregister();
g_dnl_clear_detach();
- usb_gadget_release(controller_index);
+ udc_device_put(udc);
return ret;
}
diff --git a/cmd/thordown.c b/cmd/thordown.c
index 838764ccef..fcfd38f523 100644
--- a/cmd/thordown.c
+++ b/cmd/thordown.c
@@ -15,23 +15,25 @@
int do_thor_down(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
{
+ char *interface, *devstring;
+ int controller_index;
+ struct udevice *udc;
+ int ret;
+
if (argc < 4)
return CMD_RET_USAGE;
- char *usb_controller = argv[1];
- char *interface = argv[2];
- char *devstring = argv[3];
-
- int ret;
-
puts("TIZEN \"THOR\" Downloader\n");
+ interface = argv[2];
+ devstring = argv[3];
+
ret = dfu_init_env_entities(interface, devstring);
if (ret)
goto done;
- int controller_index = simple_strtoul(usb_controller, NULL, 0);
- ret = usb_gadget_initialize(controller_index);
+ controller_index = simple_strtoul(argv[1], NULL, 0);
+ ret = udc_device_get_by_index(controller_index, &udc);
if (ret) {
pr_err("USB init failed: %d\n", ret);
ret = CMD_RET_FAILURE;
@@ -45,7 +47,7 @@ int do_thor_down(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
goto exit;
}
- ret = thor_init();
+ ret = thor_init(udc);
if (ret) {
pr_err("THOR DOWNLOAD failed: %d\n", ret);
ret = CMD_RET_FAILURE;
@@ -53,7 +55,7 @@ int do_thor_down(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
}
do {
- ret = thor_handle();
+ ret = thor_handle(udc);
if (ret == THOR_DFU_REINIT_NEEDED) {
dfu_free_entities();
ret = dfu_init_env_entities(interface, devstring);
@@ -66,7 +68,7 @@ int do_thor_down(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
} while (ret == 0);
exit:
g_dnl_unregister();
- usb_gadget_release(controller_index);
+ udc_device_put(udc);
done:
dfu_free_entities();
diff --git a/cmd/usb_gadget_sdp.c b/cmd/usb_gadget_sdp.c
index 1af82e1136..748aa0a748 100644
--- a/cmd/usb_gadget_sdp.c
+++ b/cmd/usb_gadget_sdp.c
@@ -14,14 +14,17 @@
static int do_sdp(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
{
+ int controller_index;
+ struct udevice *udc;
int ret;
if (argc < 2)
return CMD_RET_USAGE;
- char *usb_controller = argv[1];
- int controller_index = simple_strtoul(usb_controller, NULL, 0);
- usb_gadget_initialize(controller_index);
+ controller_index = simple_strtoul(argv[1], NULL, 0);
+ ret = udc_device_get_by_index(controller_index, &udc);
+ if (ret)
+ return ret;
g_dnl_clear_detach();
ret = g_dnl_register("usb_dnl_sdp");
@@ -30,20 +33,20 @@ static int do_sdp(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
goto exit_register;
}
- ret = sdp_init(controller_index);
+ ret = sdp_init(udc);
if (ret) {
pr_err("SDP init failed: %d\n", ret);
goto exit;
}
/* This command typically does not return but jumps to an image */
- sdp_handle(controller_index);
+ sdp_handle(udc);
pr_err("SDP ended\n");
exit:
g_dnl_unregister();
exit_register:
- usb_gadget_release(controller_index);
+ udc_device_put(udc);
return CMD_RET_FAILURE;
}
diff --git a/cmd/usb_mass_storage.c b/cmd/usb_mass_storage.c
index c3cc1975f9..9c51ae0967 100644
--- a/cmd/usb_mass_storage.c
+++ b/cmd/usb_mass_storage.c
@@ -143,6 +143,7 @@ static int do_usb_mass_storage(struct cmd_tbl *cmdtp, int flag,
const char *devtype;
const char *devnum;
unsigned int controller_index;
+ struct udevice *udc;
int rc;
int cable_ready_timeout __maybe_unused;
@@ -164,13 +165,14 @@ static int do_usb_mass_storage(struct cmd_tbl *cmdtp, int flag,
controller_index = (unsigned int)(simple_strtoul(
usb_controller, NULL, 0));
- if (usb_gadget_initialize(controller_index)) {
+ rc = udc_device_get_by_index(controller_index, &udc);
+ if (rc) {
pr_err("Couldn't init USB controller.\n");
rc = CMD_RET_FAILURE;
goto cleanup_ums_init;
}
- rc = fsg_init(ums, ums_count, controller_index);
+ rc = fsg_init(ums, ums_count, udc);
if (rc) {
pr_err("fsg_init failed\n");
rc = CMD_RET_FAILURE;
@@ -215,7 +217,7 @@ static int do_usb_mass_storage(struct cmd_tbl *cmdtp, int flag,
}
while (1) {
- usb_gadget_handle_interrupts(controller_index);
+ dm_usb_gadget_handle_interrupts(udc);
rc = fsg_main_thread(NULL);
if (rc) {
@@ -247,7 +249,7 @@ static int do_usb_mass_storage(struct cmd_tbl *cmdtp, int flag,
cleanup_register:
g_dnl_unregister();
cleanup_board:
- usb_gadget_release(controller_index);
+ udc_device_put(udc);
cleanup_ums_init:
ums_fini();