ppc: Use the indirect_pci.c from arch/powerpc/sysdev

This defines a CONFIG_INDIRECT_PCI symbol to control whether it
gets used or not, and fixes the Kconfig to select that symbol for
platforms that need it.

Signed-off-by: Paul Mackerras <paulus@samba.org>
diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
index 27f122e..a3451d5 100644
--- a/arch/powerpc/Kconfig
+++ b/arch/powerpc/Kconfig
@@ -280,11 +280,13 @@
 config PPC_CHRP
 	bool "  Common Hardware Reference Platform (CHRP) based machines"
 	depends on PPC_MULTIPLATFORM && PPC32
+	select PPC_INDIRECT_PCI
 	default y
 
 config PPC_PMAC
 	bool "  Apple PowerMac based machines"
 	depends on PPC_MULTIPLATFORM
+	select PPC_INDIRECT_PCI if PPC32
 	default y
 
 config PPC_PMAC64
@@ -296,6 +298,7 @@
 config PPC_PREP
 	bool "  PowerPC Reference Platform (PReP) based machines"
 	depends on PPC_MULTIPLATFORM && PPC32
+	select PPC_INDIRECT_PCI
 	default y
 
 config PPC_MAPLE
@@ -637,6 +640,12 @@
 	depends on PPC64 || POWER4 || 6xx && !CPM2
 	default y
 
+config PPC_INDIRECT_PCI
+	bool
+	depends on PCI
+	default y if 40x || 44x || 85xx || 83xx
+	default n
+
 config EISA
 	bool
 
@@ -677,6 +686,7 @@
 config PCI_8260
 	bool
 	depends on PCI && 8260
+	select PPC_INDIRECT_PCI
 	default y
 
 config 8260_PCI9
diff --git a/arch/powerpc/platforms/embedded6xx/Kconfig b/arch/powerpc/platforms/embedded6xx/Kconfig
index 2d755b7..784b41e 100644
--- a/arch/powerpc/platforms/embedded6xx/Kconfig
+++ b/arch/powerpc/platforms/embedded6xx/Kconfig
@@ -27,6 +27,7 @@
 
 config SPRUCE
 	bool "IBM-Spruce"
+	select PPC_INDIRECT_PCI
 
 config HDPU
 	bool "Sky-HDPU"
@@ -50,15 +51,19 @@
 
 config MVME5100
 	bool "Motorola-MVME5100"
+	select PPC_INDIRECT_PCI
 
 config PPLUS
 	bool "Motorola-PowerPlus"
+	select PPC_INDIRECT_PCI
 
 config PRPMC750
 	bool "Motorola-PrPMC750"
+	select PPC_INDIRECT_PCI
 
 config PRPMC800
 	bool "Motorola-PrPMC800"
+	select PPC_INDIRECT_PCI
 
 config SANDPOINT
 	bool "Motorola-Sandpoint"
@@ -74,6 +79,7 @@
 
 config GEMINI
 	bool "Synergy-Gemini"
+	select PPC_INDIRECT_PCI
 	depends on BROKEN
 	help
 	  Select Gemini if configuring for a Synergy Microsystems' Gemini
@@ -226,6 +232,7 @@
 config MV64X60
 	bool
 	depends on (GT64260 || MV64360)
+	select PPC_INDIRECT_PCI
 	default y
 
 menu "Set bridge options"
@@ -274,6 +281,7 @@
 config MPC10X_BRIDGE
 	bool
 	depends on POWERPMC250 || LOPEC || SANDPOINT
+	select PPC_INDIRECT_PCI
 	default y
 
 config MPC10X_OPENPIC
diff --git a/arch/powerpc/sysdev/Makefile b/arch/powerpc/sysdev/Makefile
index c649f03..e66fef6 100644
--- a/arch/powerpc/sysdev/Makefile
+++ b/arch/powerpc/sysdev/Makefile
@@ -1,3 +1,2 @@
 obj-$(CONFIG_MPIC)		+= mpic.o
-indirectpci-$(CONFIG_PPC_PMAC)	= indirect_pci.o
-obj-$(CONFIG_PPC32)		+= $(indirectpci-y)
+obj-$(CONFIG_PPC_INDIRECT_PCI)	+= indirect_pci.o