Index: uspace/lib/usbhost/include/usb/host/hcd.h
===================================================================
--- uspace/lib/usbhost/include/usb/host/hcd.h	(revision 60744cba3754acca8b3f05999d839bd617742de8)
+++ uspace/lib/usbhost/include/usb/host/hcd.h	(revision df2b4ce7dfd9a9460beae9c79d6b15ab4f89a620)
@@ -1,3 +1,4 @@
 /*
+ * Copyright (c) 2025 Jiri Svoboda
  * Copyright (c) 2011 Jan Vesely
  * Copyright (c) 2018 Ondrej Hlavaty
@@ -101,4 +102,7 @@
 	/** HC is gone. */
 	int (*hc_gone)(hc_device_t *);
+
+	/** Quiesce HC. */
+	int (*hc_quiesce)(hc_device_t *);
 } hc_driver_t;
 
Index: uspace/lib/usbhost/src/hcd.c
===================================================================
--- uspace/lib/usbhost/src/hcd.c	(revision 60744cba3754acca8b3f05999d839bd617742de8)
+++ uspace/lib/usbhost/src/hcd.c	(revision df2b4ce7dfd9a9460beae9c79d6b15ab4f89a620)
@@ -1,3 +1,4 @@
 /*
+ * Copyright (c) 2025 Jiri Svoboda
  * Copyright (c) 2011 Jan Vesely
  * Copyright (c) 2018 Ondrej Hlavaty
@@ -58,4 +59,5 @@
 int hc_dev_remove(ddf_dev_t *);
 int hc_dev_gone(ddf_dev_t *);
+int hc_dev_quiesce(ddf_dev_t *);
 int hc_fun_online(ddf_fun_t *);
 int hc_fun_offline(ddf_fun_t *);
@@ -65,4 +67,5 @@
 	.dev_remove = hc_dev_remove,
 	.dev_gone = hc_dev_gone,
+	.dev_quiesce = hc_dev_quiesce,
 	.fun_online = hc_fun_online,
 	.fun_offline = hc_fun_offline,
@@ -358,4 +361,15 @@
 }
 
+errno_t hc_dev_quiesce(ddf_dev_t *dev)
+{
+	errno_t err = ENOTSUP;
+	hc_device_t *hcd = dev_to_hcd(dev);
+
+	if (hc_driver->hc_quiesce)
+		err = hc_driver->hc_quiesce(hcd);
+
+	return err;
+}
+
 errno_t hc_fun_online(ddf_fun_t *fun)
 {
