summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsakumisu <[email protected]>2025-11-04 21:50:43 +0800
committersakumisu <[email protected]>2025-11-04 21:50:43 +0800
commit39bff0fb103094d1924d3dee185982de4b3e2d06 (patch)
treeddd13f437e08495ba029aade8756bbc5e91d197e
parentd0a8f5b2d030eb28ed04bcb2e85fff895a72e4bc (diff)
fix(class/hub): delete thread before delete mq
Signed-off-by: sakumisu <[email protected]>
-rw-r--r--class/hub/usbh_hub.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/class/hub/usbh_hub.c b/class/hub/usbh_hub.c
index 53382cd2..c261c97f 100644
--- a/class/hub/usbh_hub.c
+++ b/class/hub/usbh_hub.c
@@ -731,7 +731,6 @@ int usbh_hub_deinitialize(struct usbh_bus *bus)
{
struct usbh_hubport *hport;
struct usbh_hub *hub;
- size_t flags;
hub = &bus->hcd.roothub;
for (uint8_t port = 0; port < hub->nports; port++) {
@@ -740,14 +739,10 @@ int usbh_hub_deinitialize(struct usbh_bus *bus)
usbh_hubport_release(hport);
}
- flags = usb_osal_enter_critical_section();
-
usb_hc_deinit(bus);
- usb_osal_leave_critical_section(flags);
-
- usb_osal_mq_delete(bus->hub_mq);
usb_osal_thread_delete(bus->hub_thread);
+ usb_osal_mq_delete(bus->hub_mq);
return 0;
}