pci: Fix compilation on non x86

* Introduce pci_devfn_t on all arch
* Add PCI function prototypes in arch/pci_ops.h
* Remove unused pci_config_default()

Change-Id: I71d6f82367e907732944ac5dfaabfa77181c5f20
Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Reviewed-on: https://review.coreboot.org/25723
Reviewed-by: Nico Huber <nico.h@gmx.de>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
diff --git a/src/arch/arm/include/arch/pci_ops.h b/src/arch/arm/include/arch/pci_ops.h
index 99a47ce..2e2661b 100644
--- a/src/arch/arm/include/arch/pci_ops.h
+++ b/src/arch/arm/include/arch/pci_ops.h
@@ -16,6 +16,20 @@
 #ifndef ARCH_ARM_PCI_OPS_H
 #define ARCH_ARM_PCI_OPS_H
 
-/* Empty stub until PCI includes are properly fixed. */
+#include <stdint.h>
+
+typedef u32 pci_devfn_t;
+
+#ifdef __SIMPLE_DEVICE__
+// FIXME: Use of device_t is deprecated
+typedef pci_devfn_t device_t;
+
+u8 pci_read_config8(pci_devfn_t dev, unsigned int where);
+u16 pci_read_config16(pci_devfn_t dev, unsigned int where);
+u32 pci_read_config32(pci_devfn_t dev, unsigned int where);
+void pci_write_config8(pci_devfn_t dev, unsigned int where, u8 val);
+void pci_write_config16(pci_devfn_t dev, unsigned int where, u16 val);
+void pci_write_config32(pci_devfn_t dev, unsigned int where, u32 val);
+#endif
 
 #endif
diff --git a/src/arch/arm64/include/arch/pci_ops.h b/src/arch/arm64/include/arch/pci_ops.h
index 7c3d4cb..e6d5206 100644
--- a/src/arch/arm64/include/arch/pci_ops.h
+++ b/src/arch/arm64/include/arch/pci_ops.h
@@ -16,10 +16,20 @@
 #ifndef ARCH_ARM64_PCI_OPS_H
 #define ARCH_ARM64_PCI_OPS_H
 
-/* V8 has PCI in some form. We will need to fill this in. */
-static inline const struct pci_bus_operations *pci_config_default(void)
-{
-	return NULL;
-}
+#include <stdint.h>
+
+typedef u32 pci_devfn_t;
+
+#ifdef __SIMPLE_DEVICE__
+// FIXME: Use of device_t is deprecated
+typedef pci_devfn_t device_t;
+
+u8 pci_read_config8(pci_devfn_t dev, unsigned int where);
+u16 pci_read_config16(pci_devfn_t dev, unsigned int where);
+u32 pci_read_config32(pci_devfn_t dev, unsigned int where);
+void pci_write_config8(pci_devfn_t dev, unsigned int where, u8 val);
+void pci_write_config16(pci_devfn_t dev, unsigned int where, u16 val);
+void pci_write_config32(pci_devfn_t dev, unsigned int where, u32 val);
+#endif
 
 #endif
diff --git a/src/arch/mips/include/arch/pci_ops.h b/src/arch/mips/include/arch/pci_ops.h
index a710ce2..5fef126 100644
--- a/src/arch/mips/include/arch/pci_ops.h
+++ b/src/arch/mips/include/arch/pci_ops.h
@@ -16,11 +16,20 @@
 #ifndef ARCH_MIPS_PCI_OPS_H
 #define ARCH_MIPS_PCI_OPS_H
 
-#include <stddef.h>
+#include <stdint.h>
 
-static inline const struct pci_bus_operations *pci_config_default(void)
-{
-	return NULL;
-}
+typedef u32 pci_devfn_t;
+
+#ifdef __SIMPLE_DEVICE__
+// FIXME: Use of device_t is deprecated
+typedef pci_devfn_t device_t;
+
+u8 pci_read_config8(pci_devfn_t dev, unsigned int where);
+u16 pci_read_config16(pci_devfn_t dev, unsigned int where);
+u32 pci_read_config32(pci_devfn_t dev, unsigned int where);
+void pci_write_config8(pci_devfn_t dev, unsigned int where, u8 val);
+void pci_write_config16(pci_devfn_t dev, unsigned int where, u16 val);
+void pci_write_config32(pci_devfn_t dev, unsigned int where, u32 val);
+#endif
 
 #endif