aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorGeoff Levand <geoffrey.levand@am.sony.com>2006-06-19 14:33:28 -0400
committerPaul Mackerras <paulus@samba.org>2006-06-21 01:01:31 -0400
commitc01ea72a3b8abb7baa4291a1876b82599867035a (patch)
tree0ba10d699df09db0b35d5aaea4a654a5d0b216d7 /arch
parente46a0237fda640f02bc4cb3d9702b6ee91bfd6e4 (diff)
[POWERPC] spufs: split the Cell BE support into generic and platform dependant parts
Creates new config variables PPC_CELL_NATIVE and PPC_IBM_CELL_BLADE. The existing CONFIG_PPC_CELL is now used to denote the generic Cell processor support. PPC_CELL = make descends into platforms/cell PPC_CELL_NATIVE = add bare metal support PPC_IBM_CELL_BLADE = add blade device drivers, etc. Also renames spu_priv1.c to spu_priv1_mmio.c. Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com> Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/powerpc/Kconfig17
-rw-r--r--arch/powerpc/configs/cell_defconfig4
-rw-r--r--arch/powerpc/platforms/cell/Kconfig5
-rw-r--r--arch/powerpc/platforms/cell/Makefile20
-rw-r--r--arch/powerpc/platforms/cell/spu_priv1_mmio.c (renamed from arch/powerpc/platforms/cell/spu_priv1.c)0
5 files changed, 30 insertions, 16 deletions
diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
index 65f4cd181bd6..7b829c754d0d 100644
--- a/arch/powerpc/Kconfig
+++ b/arch/powerpc/Kconfig
@@ -404,8 +404,18 @@ config PPC_MAPLE
404 For more informations, refer to <http://www.970eval.com> 404 For more informations, refer to <http://www.970eval.com>
405 405
406config PPC_CELL 406config PPC_CELL
407 bool "Cell Broadband Processor Architecture" 407 bool
408 default n
409
410config PPC_CELL_NATIVE
411 bool
412 select PPC_CELL
413 default n
414
415config PPC_IBM_CELL_BLADE
416 bool " IBM Cell Blade"
408 depends on PPC_MULTIPLATFORM && PPC64 417 depends on PPC_MULTIPLATFORM && PPC64
418 select PPC_CELL_NATIVE
409 select PPC_RTAS 419 select PPC_RTAS
410 select MMIO_NVRAM 420 select MMIO_NVRAM
411 select PPC_UDBG_16550 421 select PPC_UDBG_16550
@@ -452,11 +462,6 @@ config MPIC_BROKEN_U3
452 depends on PPC_MAPLE 462 depends on PPC_MAPLE
453 default y 463 default y
454 464
455config CELL_IIC
456 depends on PPC_CELL
457 bool
458 default y
459
460config IBMVIO 465config IBMVIO
461 depends on PPC_PSERIES || PPC_ISERIES 466 depends on PPC_PSERIES || PPC_ISERIES
462 bool 467 bool
diff --git a/arch/powerpc/configs/cell_defconfig b/arch/powerpc/configs/cell_defconfig
index 5569befa405d..b8b8d4675dc0 100644
--- a/arch/powerpc/configs/cell_defconfig
+++ b/arch/powerpc/configs/cell_defconfig
@@ -117,6 +117,8 @@ CONFIG_PPC_MULTIPLATFORM=y
117# CONFIG_PPC_PMAC is not set 117# CONFIG_PPC_PMAC is not set
118# CONFIG_PPC_MAPLE is not set 118# CONFIG_PPC_MAPLE is not set
119CONFIG_PPC_CELL=y 119CONFIG_PPC_CELL=y
120CONFIG_PPC_CELL_NATIVE=y
121CONFIG_PPC_IBM_CELL_BLADE=y
120CONFIG_PPC_SYSTEMSIM=y 122CONFIG_PPC_SYSTEMSIM=y
121# CONFIG_U3_DART is not set 123# CONFIG_U3_DART is not set
122CONFIG_PPC_RTAS=y 124CONFIG_PPC_RTAS=y
@@ -124,7 +126,6 @@ CONFIG_PPC_RTAS=y
124CONFIG_RTAS_PROC=y 126CONFIG_RTAS_PROC=y
125CONFIG_RTAS_FLASH=y 127CONFIG_RTAS_FLASH=y
126CONFIG_MMIO_NVRAM=y 128CONFIG_MMIO_NVRAM=y
127CONFIG_CELL_IIC=y
128# CONFIG_PPC_MPC106 is not set 129# CONFIG_PPC_MPC106 is not set
129# CONFIG_PPC_970_NAP is not set 130# CONFIG_PPC_970_NAP is not set
130# CONFIG_CPU_FREQ is not set 131# CONFIG_CPU_FREQ is not set
@@ -134,6 +135,7 @@ CONFIG_CELL_IIC=y
134# Cell Broadband Engine options 135# Cell Broadband Engine options
135# 136#
136CONFIG_SPU_FS=m 137CONFIG_SPU_FS=m
138CONFIG_SPU_BASE=y
137CONFIG_SPUFS_MMAP=y 139CONFIG_SPUFS_MMAP=y
138CONFIG_CBE_RAS=y 140CONFIG_CBE_RAS=y
139 141
diff --git a/arch/powerpc/platforms/cell/Kconfig b/arch/powerpc/platforms/cell/Kconfig
index 00b83db2ce73..352bbbacde9a 100644
--- a/arch/powerpc/platforms/cell/Kconfig
+++ b/arch/powerpc/platforms/cell/Kconfig
@@ -5,11 +5,16 @@ config SPU_FS
5 tristate "SPU file system" 5 tristate "SPU file system"
6 default m 6 default m
7 depends on PPC_CELL 7 depends on PPC_CELL
8 select SPU_BASE
8 help 9 help
9 The SPU file system is used to access Synergistic Processing 10 The SPU file system is used to access Synergistic Processing
10 Units on machines implementing the Broadband Processor 11 Units on machines implementing the Broadband Processor
11 Architecture. 12 Architecture.
12 13
14config SPU_BASE
15 bool
16 default n
17
13config SPUFS_MMAP 18config SPUFS_MMAP
14 bool 19 bool
15 depends on SPU_FS && SPARSEMEM 20 depends on SPU_FS && SPARSEMEM
diff --git a/arch/powerpc/platforms/cell/Makefile b/arch/powerpc/platforms/cell/Makefile
index bfaf40024634..c89cdd67383b 100644
--- a/arch/powerpc/platforms/cell/Makefile
+++ b/arch/powerpc/platforms/cell/Makefile
@@ -1,13 +1,15 @@
1obj-y += interrupt.o iommu.o setup.o spider-pic.o 1obj-$(CONFIG_PPC_CELL_NATIVE) += interrupt.o iommu.o setup.o \
2obj-y += cbe_regs.o pervasive.o 2 cbe_regs.o spider-pic.o pervasive.o
3obj-$(CONFIG_CBE_RAS) += ras.o 3obj-$(CONFIG_CBE_RAS) += ras.o
4 4
5obj-$(CONFIG_SMP) += smp.o 5ifeq ($(CONFIG_SMP),y)
6obj-$(CONFIG_PPC_CELL_NATIVE) += smp.o
7endif
6 8
7# needed only when building loadable spufs.ko 9# needed only when building loadable spufs.ko
8spufs-modular-$(CONFIG_SPU_FS) += spu_syscalls.o 10spufs-modular-$(CONFIG_SPU_FS) += spu_syscalls.o
9obj-y += $(spufs-modular-m) 11spu-priv1-$(CONFIG_PPC_CELL_NATIVE) += spu_priv1_mmio.o
10 12
11# always needed in kernel 13obj-$(CONFIG_SPU_BASE) += spu_callbacks.o spu_base.o \
12spufs-builtin-$(CONFIG_SPU_FS) += spu_callbacks.o spu_base.o spu_priv1.o spufs/ 14 $(spufs-modular-m) \
13obj-y += $(spufs-builtin-y) $(spufs-builtin-m) 15 $(spu-priv1-y) spufs/
diff --git a/arch/powerpc/platforms/cell/spu_priv1.c b/arch/powerpc/platforms/cell/spu_priv1_mmio.c
index b2656421c7b5..b2656421c7b5 100644
--- a/arch/powerpc/platforms/cell/spu_priv1.c
+++ b/arch/powerpc/platforms/cell/spu_priv1_mmio.c