summaryrefslogtreecommitdiff
path: root/src/sys/include/io
diff options
context:
space:
mode:
authorIan Moffett <ian@osmora.org>2025-10-11 19:02:45 -0400
committerIan Moffett <ian@osmora.org>2025-10-11 19:02:45 -0400
commit0552d8126be3f2ea9f03098afb5cb77049c8d606 (patch)
tree28f3392944b63e5c332a259cd85e9bf7a38acd24 /src/sys/include/io
parent3fdef4036ebde968f13567288fa96d79e9670611 (diff)
kern: usb: Poll USBSTS.CNR after reset
The host needs to wait for the controller to be ready by polling the CNR bit as per section 4.2 of the spec Signed-off-by: Ian Moffett <ian@osmora.org>
Diffstat (limited to 'src/sys/include/io')
-rw-r--r--src/sys/include/io/usb/xhciregs.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/sys/include/io/usb/xhciregs.h b/src/sys/include/io/usb/xhciregs.h
index ebaf5d7..85a8630 100644
--- a/src/sys/include/io/usb/xhciregs.h
+++ b/src/sys/include/io/usb/xhciregs.h
@@ -77,6 +77,12 @@ struct __packed xhci_opregs {
*/
#define USBCMD_HCRST BIT(1) /* Host controller reset */
+/*
+ * USB status register bits
+ *
+ * See section 5.4.2 of the xHCI spec
+ */
+#define USBSTS_CNR BIT(11) /* Controller not ready */
/*
* Macros to get various register spaces