[PATCH v2] usb: gadget: f_mass_storage: Add schedule() in sleep_thread()

Patrice Chotard patrice.chotard at foss.st.com
Mon Dec 2 08:46:44 CET 2024


In case "ums" command is used on platforms which don't implement
g_dnl_board_usb_cable_connected() and USB cable is not connected,
we stay inside sleep_thread() forever and watchdog is triggered.

Add schedule() call to avoid this issue.

Signed-off-by: Patrice Chotard <patrice.chotard at foss.st.com>

---

Changes in v2:
  - move schedule() right before dm_usb_gadget_handle_interrupts()

 drivers/usb/gadget/f_mass_storage.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/usb/gadget/f_mass_storage.c b/drivers/usb/gadget/f_mass_storage.c
index ffe1ae6eb73..d3fc4acb401 100644
--- a/drivers/usb/gadget/f_mass_storage.c
+++ b/drivers/usb/gadget/f_mass_storage.c
@@ -682,6 +682,7 @@ static int sleep_thread(struct fsg_common *common)
 			k = 0;
 		}
 
+		schedule();
 		dm_usb_gadget_handle_interrupts(udcdev);
 	}
 	common->thread_wakeup_needed = 0;
-- 
2.25.1



More information about the U-Boot mailing list