cmd: rockusb: Use plain udevice for UDC controller interaction

Convert to plain udevice interaction with UDC controller
device, avoid the use of UDC uclass dev_array .

Signed-off-by: Marek Vasut <marex@denx.de>
Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
This commit is contained in:
Marek Vasut 2023-09-01 11:49:51 +02:00
parent bac356c308
commit 0669a929b8

View file

@ -15,6 +15,7 @@ static int do_rockusb(struct cmd_tbl *cmdtp, int flag, int argc,
{ {
int controller_index, dev_index; int controller_index, dev_index;
char *usb_controller; char *usb_controller;
struct udevice *udc;
char *devtype; char *devtype;
char *devnum; char *devnum;
int ret; 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); dev_index = simple_strtoul(devnum, NULL, 0);
rockusb_dev_init(devtype, dev_index); rockusb_dev_init(devtype, dev_index);
ret = usb_gadget_initialize(controller_index); ret = udc_device_get_by_index(controller_index, &udc);
if (ret) { if (ret) {
printf("USB init failed: %d\n", ret); printf("USB init failed: %d\n", ret);
return CMD_RET_FAILURE; return CMD_RET_FAILURE;
@ -56,14 +57,14 @@ static int do_rockusb(struct cmd_tbl *cmdtp, int flag, int argc,
break; break;
if (ctrlc()) if (ctrlc())
break; break;
usb_gadget_handle_interrupts(controller_index); dm_usb_gadget_handle_interrupts(udc);
} }
ret = CMD_RET_SUCCESS; ret = CMD_RET_SUCCESS;
exit: exit:
g_dnl_unregister(); g_dnl_unregister();
g_dnl_clear_detach(); g_dnl_clear_detach();
usb_gadget_release(controller_index); udc_device_put(udc);
return ret; return ret;
} }