summaryrefslogtreecommitdiff
path: root/src/soc/intel/denverton_ns/soc_util.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/soc/intel/denverton_ns/soc_util.c')
-rw-r--r--src/soc/intel/denverton_ns/soc_util.c90
1 files changed, 70 insertions, 20 deletions
diff --git a/src/soc/intel/denverton_ns/soc_util.c b/src/soc/intel/denverton_ns/soc_util.c
index 780695a573..b56c8396d9 100644
--- a/src/soc/intel/denverton_ns/soc_util.c
+++ b/src/soc/intel/denverton_ns/soc_util.c
@@ -28,45 +28,61 @@
#include <soc/pci_devs.h>
#include <soc/systemagent.h>
-device_t get_hostbridge_dev(void)
+#ifdef __SIMPLE_DEVICE__
+pci_devfn_t get_hostbridge_dev(void)
{
-#if defined(__PRE_RAM__) || defined(__SMM__)
return PCI_DEV(0, SA_DEV, SA_FUNC);
+}
#else
+struct device *get_hostbridge_dev(void)
+{
return dev_find_slot(0, PCI_DEVFN(SA_DEV, SA_FUNC));
-#endif
}
+#endif
-device_t get_lpc_dev(void)
+#ifdef __SIMPLE_DEVICE__
+pci_devfn_t get_lpc_dev(void)
{
-#if defined(__PRE_RAM__) || defined(__SMM__)
return PCI_DEV(0, LPC_DEV, LPC_FUNC);
+}
#else
+struct device *get_lpc_dev(void)
+{
return dev_find_slot(0, PCI_DEVFN(LPC_DEV, LPC_FUNC));
-#endif
}
+#endif
-device_t get_pmc_dev(void)
+#ifdef __SIMPLE_DEVICE__
+pci_devfn_t get_pmc_dev(void)
{
-#if defined(__PRE_RAM__) || defined(__SMM__)
return PCI_DEV(0, PMC_DEV, PMC_FUNC);
+}
#else
+struct device *get_pmc_dev(void)
+{
return dev_find_slot(0, PCI_DEVFN(PMC_DEV, PMC_FUNC));
-#endif
}
+#endif
-device_t get_smbus_dev(void)
+#ifdef __SIMPLE_DEVICE__
+pci_devfn_t get_smbus_dev(void)
{
-#if defined(__PRE_RAM__) || defined(__SMM__)
return PCI_DEV(0, SMBUS_DEV, SMBUS_FUNC);
+}
#else
+struct device *get_smbus_dev(void)
+{
return dev_find_slot(0, PCI_DEVFN(SMBUS_DEV, SMBUS_FUNC));
-#endif
}
+#endif
uint32_t get_pciebase(void)
{
- device_t dev;
+#ifdef __SIMPLE_DEVICE__
+ pci_devfn_t dev;
+#else
+ struct device *dev;
+#endif
u32 pciexbar_reg;
dev = get_hostbridge_dev();
@@ -98,7 +114,11 @@ uint32_t get_pciebase(void)
uint32_t get_pcielength(void)
{
- device_t dev;
+#ifdef __SIMPLE_DEVICE__
+ pci_devfn_t dev;
+#else
+ struct device *dev;
+#endif
u32 pciexbar_reg;
dev = get_hostbridge_dev();
@@ -130,7 +150,12 @@ uint32_t get_pcielength(void)
uint32_t get_tseg_memory(void)
{
- device_t dev = get_hostbridge_dev();
+#ifdef __SIMPLE_DEVICE__
+ pci_devfn_t dev;
+#else
+ struct device *dev;
+#endif
+ dev = get_hostbridge_dev();
if (!dev)
return 0;
@@ -140,7 +165,12 @@ uint32_t get_tseg_memory(void)
uint32_t get_top_of_low_memory(void)
{
- device_t dev = get_hostbridge_dev();
+#ifdef __SIMPLE_DEVICE__
+ pci_devfn_t dev;
+#else
+ struct device *dev;
+#endif
+ dev = get_hostbridge_dev();
if (!dev)
return 0;
@@ -150,7 +180,12 @@ uint32_t get_top_of_low_memory(void)
uint64_t get_top_of_upper_memory(void)
{
- device_t dev = get_hostbridge_dev();
+#ifdef __SIMPLE_DEVICE__
+ pci_devfn_t dev;
+#else
+ struct device *dev;
+#endif
+ dev = get_hostbridge_dev();
if (!dev)
return 0;
@@ -162,7 +197,12 @@ uint64_t get_top_of_upper_memory(void)
uint16_t get_pmbase(void)
{
- device_t dev = get_pmc_dev();
+#ifdef __SIMPLE_DEVICE__
+ pci_devfn_t dev;
+#else
+ struct device *dev;
+#endif
+ dev = get_pmc_dev();
if (!dev)
return 0;
@@ -172,7 +212,12 @@ uint16_t get_pmbase(void)
uint16_t get_tcobase(void)
{
- device_t dev = get_smbus_dev();
+#ifdef __SIMPLE_DEVICE__
+ pci_devfn_t dev;
+#else
+ struct device *dev;
+#endif
+ dev = get_smbus_dev();
if (!dev)
return 0;
@@ -193,7 +238,12 @@ void mmio_andthenor32(void *addr, uint32_t val2and, uint32_t val2or)
uint8_t silicon_stepping(void)
{
uint8_t revision_id;
- device_t dev = get_lpc_dev();
+#ifdef __SIMPLE_DEVICE__
+ pci_devfn_t dev;
+#else
+ struct device *dev;
+#endif
+ dev = get_lpc_dev();
if (!dev)
return 0;