diff options
author | Geoff Levand <geoffrey.levand@am.sony.com> | 2006-06-19 14:33:28 -0400 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2006-06-21 01:01:31 -0400 |
commit | c01ea72a3b8abb7baa4291a1876b82599867035a (patch) | |
tree | 0ba10d699df09db0b35d5aaea4a654a5d0b216d7 /arch/powerpc | |
parent | e46a0237fda640f02bc4cb3d9702b6ee91bfd6e4 (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/powerpc')
-rw-r--r-- | arch/powerpc/Kconfig | 17 | ||||
-rw-r--r-- | arch/powerpc/configs/cell_defconfig | 4 | ||||
-rw-r--r-- | arch/powerpc/platforms/cell/Kconfig | 5 | ||||
-rw-r--r-- | arch/powerpc/platforms/cell/Makefile | 20 | ||||
-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 | ||
406 | config PPC_CELL | 406 | config PPC_CELL |
407 | bool "Cell Broadband Processor Architecture" | 407 | bool |
408 | default n | ||
409 | |||
410 | config PPC_CELL_NATIVE | ||
411 | bool | ||
412 | select PPC_CELL | ||
413 | default n | ||
414 | |||
415 | config 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 | ||
455 | config CELL_IIC | ||
456 | depends on PPC_CELL | ||
457 | bool | ||
458 | default y | ||
459 | |||
460 | config IBMVIO | 465 | config 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 |
119 | CONFIG_PPC_CELL=y | 119 | CONFIG_PPC_CELL=y |
120 | CONFIG_PPC_CELL_NATIVE=y | ||
121 | CONFIG_PPC_IBM_CELL_BLADE=y | ||
120 | CONFIG_PPC_SYSTEMSIM=y | 122 | CONFIG_PPC_SYSTEMSIM=y |
121 | # CONFIG_U3_DART is not set | 123 | # CONFIG_U3_DART is not set |
122 | CONFIG_PPC_RTAS=y | 124 | CONFIG_PPC_RTAS=y |
@@ -124,7 +126,6 @@ CONFIG_PPC_RTAS=y | |||
124 | CONFIG_RTAS_PROC=y | 126 | CONFIG_RTAS_PROC=y |
125 | CONFIG_RTAS_FLASH=y | 127 | CONFIG_RTAS_FLASH=y |
126 | CONFIG_MMIO_NVRAM=y | 128 | CONFIG_MMIO_NVRAM=y |
127 | CONFIG_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 | # |
136 | CONFIG_SPU_FS=m | 137 | CONFIG_SPU_FS=m |
138 | CONFIG_SPU_BASE=y | ||
137 | CONFIG_SPUFS_MMAP=y | 139 | CONFIG_SPUFS_MMAP=y |
138 | CONFIG_CBE_RAS=y | 140 | CONFIG_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 | ||
14 | config SPU_BASE | ||
15 | bool | ||
16 | default n | ||
17 | |||
13 | config SPUFS_MMAP | 18 | config 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 @@ | |||
1 | obj-y += interrupt.o iommu.o setup.o spider-pic.o | 1 | obj-$(CONFIG_PPC_CELL_NATIVE) += interrupt.o iommu.o setup.o \ |
2 | obj-y += cbe_regs.o pervasive.o | 2 | cbe_regs.o spider-pic.o pervasive.o |
3 | obj-$(CONFIG_CBE_RAS) += ras.o | 3 | obj-$(CONFIG_CBE_RAS) += ras.o |
4 | 4 | ||
5 | obj-$(CONFIG_SMP) += smp.o | 5 | ifeq ($(CONFIG_SMP),y) |
6 | obj-$(CONFIG_PPC_CELL_NATIVE) += smp.o | ||
7 | endif | ||
6 | 8 | ||
7 | # needed only when building loadable spufs.ko | 9 | # needed only when building loadable spufs.ko |
8 | spufs-modular-$(CONFIG_SPU_FS) += spu_syscalls.o | 10 | spufs-modular-$(CONFIG_SPU_FS) += spu_syscalls.o |
9 | obj-y += $(spufs-modular-m) | 11 | spu-priv1-$(CONFIG_PPC_CELL_NATIVE) += spu_priv1_mmio.o |
10 | 12 | ||
11 | # always needed in kernel | 13 | obj-$(CONFIG_SPU_BASE) += spu_callbacks.o spu_base.o \ |
12 | spufs-builtin-$(CONFIG_SPU_FS) += spu_callbacks.o spu_base.o spu_priv1.o spufs/ | 14 | $(spufs-modular-m) \ |
13 | obj-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 | |||