|
@@ -42,6 +42,30 @@ int do_usb_mass_storage(cmd_tbl_t *cmdtp, int flag,
|
|
|
|
|
|
g_dnl_register("ums");
|
|
g_dnl_register("ums");
|
|
|
|
|
|
|
|
+ /* Timeout unit: seconds */
|
|
|
|
+ int cable_ready_timeout = UMS_CABLE_READY_TIMEOUT;
|
|
|
|
+
|
|
|
|
+ if (!usb_cable_connected()) {
|
|
|
|
+ puts("Please connect USB cable.\n");
|
|
|
|
+
|
|
|
|
+ while (!usb_cable_connected()) {
|
|
|
|
+ if (ctrlc()) {
|
|
|
|
+ puts("\rCTRL+C - Operation aborted.\n");
|
|
|
|
+ goto exit;
|
|
|
|
+ }
|
|
|
|
+ if (!cable_ready_timeout) {
|
|
|
|
+ puts("\rUSB cable not detected.\n" \
|
|
|
|
+ "Command exit.\n");
|
|
|
|
+ goto exit;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ printf("\rAuto exit in: %.2d s.", cable_ready_timeout);
|
|
|
|
+ mdelay(1000);
|
|
|
|
+ cable_ready_timeout--;
|
|
|
|
+ }
|
|
|
|
+ puts("\r\n");
|
|
|
|
+ }
|
|
|
|
+
|
|
while (1) {
|
|
while (1) {
|
|
usb_gadget_handle_interrupts();
|
|
usb_gadget_handle_interrupts();
|
|
|
|
|