X-Git-Url: http://git.ipfire.org/?a=blobdiff_plain;f=common%2Fcmd_fastboot.c;h=346ab804541fd951316ca962ca3f5bb727f53244;hb=7bf9f20d0246e0985c5c06bb56b3e9ce9300fcde;hp=83fa7bdded5986a8488c588e883ba2b6a07f2ac9;hpb=638b3e8342e4b395f9e961bfac200420f29874a3;p=people%2Fms%2Fu-boot.git diff --git a/common/cmd_fastboot.c b/common/cmd_fastboot.c index 83fa7bdded..346ab80454 100644 --- a/common/cmd_fastboot.c +++ b/common/cmd_fastboot.c @@ -15,22 +15,33 @@ static int do_fastboot(cmd_tbl_t *cmdtp, int flag, int argc, char *const argv[]) { int ret; + g_dnl_clear_detach(); ret = g_dnl_register("usb_dnl_fastboot"); if (ret) return ret; + if (!g_dnl_board_usb_cable_connected()) { + puts("\rUSB cable not detected.\n" \ + "Command exit.\n"); + return CMD_RET_FAILURE; + } + while (1) { + if (g_dnl_detach()) + break; if (ctrlc()) break; usb_gadget_handle_interrupts(); } g_dnl_unregister(); + g_dnl_clear_detach(); return CMD_RET_SUCCESS; } U_BOOT_CMD( - fastboot, 1, 1, do_fastboot, - "fastboot - enter USB Fastboot protocol", - "" + fastboot, 1, 0, do_fastboot, + "use USB Fastboot protocol", + "\n" + " - run as a fastboot usb device" );