device/xhci: Factor out `struct xhci_usb_info`
This commit factors out `struct xhci_usb_info` from intel specific code
as it will be useful on other platforms.
BUG=b:186792595
TEST=Builds for volteer
Change-Id: I5b4cc6268f072c6948f11c7498a564d7a5c0a190
Signed-off-by: Robert Zieba <robertzieba@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/67934
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin Roth <martin.roth@amd.corp-partner.google.com>
diff --git a/src/include/device/xhci.h b/src/include/device/xhci.h
index e5ce8b5..a4a3bc1 100644
--- a/src/include/device/xhci.h
+++ b/src/include/device/xhci.h
@@ -81,6 +81,20 @@
};
};
+/*
+ * struct xhci_usb_info - Data containing number of USB ports & offset.
+ * @usb2_port_status_reg: Offset to USB2 port status register.
+ * @num_usb2_ports: Number of USB2 ports.
+ * @usb3_port_status_reg: Offset to USB3 port status register.
+ * @num_usb3_ports: Number of USB3 ports.
+ */
+struct xhci_usb_info {
+ uint32_t usb2_port_status_reg;
+ uint32_t num_usb2_ports;
+ uint32_t usb3_port_status_reg;
+ uint32_t num_usb3_ports;
+};
+
/**
* Iterates over the xHCI Extended Capabilities List.
*/
diff --git a/src/soc/intel/common/block/include/intelblocks/xhci.h b/src/soc/intel/common/block/include/intelblocks/xhci.h
index 7e2b76e..8c58891 100644
--- a/src/soc/intel/common/block/include/intelblocks/xhci.h
+++ b/src/soc/intel/common/block/include/intelblocks/xhci.h
@@ -4,24 +4,11 @@
#define SOC_INTEL_COMMON_BLOCK_XHCI_H
#include <device/device.h>
+#include <device/xhci.h>
#include <elog.h>
#include <stdint.h>
/*
- * struct xhci_usb_info - Data containing number of USB ports & offset.
- * @usb2_port_status_reg: Offset to USB2 port status register.
- * @num_usb2_ports: Number of USB2 ports.
- * @usb3_port_status_reg: Offset to USB3 port status register.
- * @num_usb3_ports: Number of USB3 ports.
- */
-struct xhci_usb_info {
- uint32_t usb2_port_status_reg;
- uint32_t num_usb2_ports;
- uint32_t usb3_port_status_reg;
- uint32_t num_usb3_ports;
-};
-
-/*
* struct xhci_wake_info - Relates an XHCI device to registers and wake types
* @xhci_dev: devfn of the XHCI device
* @elog_wake_type_host: the wake type for the controller device