summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/soc/intel/fsp_broadwell_de/Makefile.inc1
-rw-r--r--src/soc/intel/fsp_broadwell_de/include/soc/vtd.h9
-rw-r--r--src/soc/intel/fsp_broadwell_de/vtd.c13
3 files changed, 15 insertions, 8 deletions
diff --git a/src/soc/intel/fsp_broadwell_de/Makefile.inc b/src/soc/intel/fsp_broadwell_de/Makefile.inc
index 7b8a788c19..f0944da175 100644
--- a/src/soc/intel/fsp_broadwell_de/Makefile.inc
+++ b/src/soc/intel/fsp_broadwell_de/Makefile.inc
@@ -16,6 +16,7 @@ romstage-y += memmap.c
romstage-y += tsc_freq.c
romstage-y += smbus-imc.c
romstage-y += ubox.c
+romstage-y += vtd.c
postcar-y += tsc_freq.c
diff --git a/src/soc/intel/fsp_broadwell_de/include/soc/vtd.h b/src/soc/intel/fsp_broadwell_de/include/soc/vtd.h
index 814cba02cd..f1087d1997 100644
--- a/src/soc/intel/fsp_broadwell_de/include/soc/vtd.h
+++ b/src/soc/intel/fsp_broadwell_de/include/soc/vtd.h
@@ -30,13 +30,6 @@
#define VTD_DFX1_RANGE_3F8_DISABLE (1u << 29)
#define VTD_DFX1_RANGE_2F8_DISABLE (1u << 30)
-static inline uint8_t get_busno1(void)
-{
- uint32_t reg32;
-
- /* Figure out what bus number is assigned for CPUBUSNO(1) */
- reg32 = pci_mmio_read_config32(VTD_PCI_DEV, VTD_CPUBUSNO);
- return ((reg32 >> VTD_CPUBUSNO_BUS1_SHIFT) & VTD_CPUBUSNO_BUS1_MASK);
-}
+uint8_t get_busno1(void);
#endif
diff --git a/src/soc/intel/fsp_broadwell_de/vtd.c b/src/soc/intel/fsp_broadwell_de/vtd.c
index 318927ab80..9e03e9ba6a 100644
--- a/src/soc/intel/fsp_broadwell_de/vtd.c
+++ b/src/soc/intel/fsp_broadwell_de/vtd.c
@@ -18,8 +18,10 @@
#include <device/pci_ids.h>
#include <soc/pci_devs.h>
#include <soc/acpi.h>
+#include <soc/vtd.h>
#include <soc/broadwell_de.h>
+#if ENV_RAMSTAGE
static void vtd_read_resources(struct device *dev)
{
@@ -44,3 +46,14 @@ static const struct pci_driver vtd_driver __pci_driver = {
.vendor = PCI_VENDOR_ID_INTEL,
.device = VTD_DEVID,
};
+
+#endif
+
+uint8_t get_busno1(void)
+{
+ uint32_t reg32;
+
+ /* Figure out what bus number is assigned for CPUBUSNO(1) */
+ reg32 = pci_mmio_read_config32(VTD_PCI_DEV, VTD_CPUBUSNO);
+ return ((reg32 >> VTD_CPUBUSNO_BUS1_SHIFT) & VTD_CPUBUSNO_BUS1_MASK);
+}