device/xhci: Add struct for capability registers
The XHCI code does not currently contain a structure that corresponds
to the XHCI capability registers. These registers contain various
useful information about the controller. Create a`xhci_capability_regs`
struct to address this.
BRANCH=guybrush
BUG=b:186792595
TEST=builds
Change-Id: If38bfde726bd4e5dd314456f25a2b08acd3cd20c
Signed-off-by: Robert Zieba <robertzieba@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/69915
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
diff --git a/src/include/device/xhci.h b/src/include/device/xhci.h
index 861bf22..c984450 100644
--- a/src/include/device/xhci.h
+++ b/src/include/device/xhci.h
@@ -94,6 +94,19 @@
uint32_t num_usb3_ports;
};
+struct xhci_capability_regs {
+ uint8_t caplength;
+ uint8_t reserved0;
+ uint16_t hciversion;
+ uint32_t hcsparams1;
+ uint32_t hcsparams2;
+ uint32_t hcsparams3;
+ uint32_t hccparams1;
+ uint32_t dboff;
+ uint32_t rtsoff;
+ uint32_t hccparams2;
+} __packed;
+
/**
* Iterates over the xHCI Extended Capabilities List.
*/