summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/platforms/celleb/pci.h
diff options
context:
space:
mode:
authorIshizaki Kou <kou.ishizaki@toshiba.co.jp>2008-04-24 19:24:13 +1000
committerPaul Mackerras <paulus@samba.org>2008-04-24 21:08:13 +1000
commit6ec859e1b21ab42bfc36bb3b51db275480165c8a (patch)
tree299d0729340598d795559084a11c2fdfc61ce199 /arch/powerpc/platforms/celleb/pci.h
parent7cfb62a2e820b6032c08835dbd996d8518af14a3 (diff)
downloadkernel-crypto-6ec859e1b21ab42bfc36bb3b51db275480165c8a.tar.gz
kernel-crypto-6ec859e1b21ab42bfc36bb3b51db275480165c8a.tar.xz
kernel-crypto-6ec859e1b21ab42bfc36bb3b51db275480165c8a.zip
[POWERPC] celleb: Consolidate io-workarounds code
Now, we can use generic io-workarounds mechanism and the workaround code for spider-pci. This changes Celleb PCI code to use spider-pci code. Signed-off-by: Kou Ishizaki <kou.ishizaki@toshiba.co.jp> Acked-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc/platforms/celleb/pci.h')
-rw-r--r--arch/powerpc/platforms/celleb/pci.h18
1 files changed, 10 insertions, 8 deletions
diff --git a/arch/powerpc/platforms/celleb/pci.h b/arch/powerpc/platforms/celleb/pci.h
index 5d5544ffedd..cabb3a108c3 100644
--- a/arch/powerpc/platforms/celleb/pci.h
+++ b/arch/powerpc/platforms/celleb/pci.h
@@ -27,16 +27,18 @@
#include <asm/prom.h>
#include <asm/ppc-pci.h>
+#include "../cell/io-workarounds.h"
+
+struct celleb_phb_spec {
+ int (*setup)(struct device_node *, struct pci_controller *);
+ struct ppc_pci_io *ops;
+ int (*iowa_init)(struct iowa_bus *, void *);
+ void *iowa_data;
+};
+
extern int celleb_setup_phb(struct pci_controller *);
extern int celleb_pci_probe_mode(struct pci_bus *);
-extern int celleb_setup_epci(struct device_node *, struct pci_controller *);
-
-extern void *celleb_dummy_page_va;
-extern int __init celleb_pci_workaround_init(void);
-extern void __init celleb_pci_add_one(struct pci_controller *,
- void (*)(struct pci_controller *));
-extern void fake_pci_workaround_init(struct pci_controller *);
-extern void epci_workaround_init(struct pci_controller *);
+extern struct celleb_phb_spec celleb_epci_spec;
#endif /* _CELLEB_PCI_H */