g_dnl_gadget_register() fails for dra7xx dwc3 gadget when running
cmd_fastboot. Calling board_usb_init() to fix this.
fastboot command is now added with an optional controller index argument
with default value as 0, to facilitate configurable controller index.

Signed-off-by: Angela Stegmaier <angelaba...@ti.com>
Signed-off-by: Dileep Katta <dileep.ka...@linaro.org>
---
Changes in v2:
        - Changed fastboot command to facilitate passing controller index
        - Added board_usb_cleanup()
This patch considers the following change by Inha Song, without which
the build will be broken on BeagleBone Black platform
        https://patchwork.ozlabs.org/patch/430303/
        
 common/cmd_fastboot.c | 15 ++++++++++++---
 1 file changed, 12 insertions(+), 3 deletions(-)

diff --git a/common/cmd_fastboot.c b/common/cmd_fastboot.c
index 346ab80..9ca4a2f 100644
--- a/common/cmd_fastboot.c
+++ b/common/cmd_fastboot.c
@@ -10,11 +10,19 @@
 #include <common.h>
 #include <command.h>
 #include <g_dnl.h>
+#include <usb.h>
 
 static int do_fastboot(cmd_tbl_t *cmdtp, int flag, int argc, char *const 
argv[])
 {
        int ret;
+       int controller_index = 0;
 
+       if (argc == 2) {
+               char *usb_controller = argv[1];
+               controller_index = simple_strtoul(usb_controller, NULL, 0);
+       }
+
+       board_usb_init(controller_index, USB_INIT_DEVICE);
        g_dnl_clear_detach();
        ret = g_dnl_register("usb_dnl_fastboot");
        if (ret)
@@ -36,12 +44,13 @@ static int do_fastboot(cmd_tbl_t *cmdtp, int flag, int 
argc, char *const argv[])
 
        g_dnl_unregister();
        g_dnl_clear_detach();
+       board_usb_cleanup(controller_index, USB_INIT_DEVICE);
        return CMD_RET_SUCCESS;
 }
 
 U_BOOT_CMD(
-       fastboot,       1,      0,      do_fastboot,
+       fastboot,       2,      0,      do_fastboot,
        "use USB Fastboot protocol",
-       "\n"
-       "    - run as a fastboot usb device"
+       "[<USB_controller>]\n"
+       "    - run as a fastboot usb device via <USB_controller>"
 );
-- 
1.8.3.2

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to