powerpc: add support for ps3 platform
PATCH 6/16 powerpc: add support for ps3 platform
This adds the core platform support for the PS3 game console and other platforms using the PS3 Platform hypervisor.
Signed-off-by Geoff Levand <[email protected]>
Signed-off-by Arnd Bergmann <[email protected]>
--- MAINTAINERS | 7 arch/powerpc/Kconfig | 11 arch/powerpc/platforms/Makefile | 1 arch/powerpc/platforms/ps3pf/Kconfig | 32 + arch/powerpc/platforms/ps3pf/Makefile | 2 arch/powerpc/platforms/ps3pf/mm.c | 827 ++++++++++++++++++++++++++++++++ arch/powerpc/platforms/ps3pf/platform.h | 59 ++ arch/powerpc/platforms/ps3pf/setup.c | 173 ++++++ arch/powerpc/platforms/ps3pf/smp.c | 158 ++++++ arch/powerpc/platforms/ps3pf/time.c | 104 ++++ include/asm-powerpc/ps3pf.h | 250 +++++++++ 11 files changed, 1623 insertions(+), 1 deletion(-)
MAINTAINERS +7 -0
@@ -2423,6 +2423,13 @@ W: http://www.pnd-pc.demon.co.uk/promise/ S: Maintained +PS3PF (PS3 PLATFORM) SUPPORT +P: Geoff Levand +M: [email protected] +L: [email protected] +L: [email protected] +S: Supported + PVRUSB2 VIDEO4LINUX DRIVER P: Mike Isely M: [email protected]
arch/powerpc/Kconfig +10 -1
@@ -495,6 +495,14 @@ depends on PPC_RTAS default n +config PS3PF + bool "PS3 Platform" + depends on PPC_MULTIPLATFORM && PPC64 + select PPC_CELL + help + This option enables support for the PS3 game console + and other platforms using the PS3 Platform hypervisor. + config XICS depends on PPC_PSERIES bool
@@ -647,6 +655,7 @@ source arch/powerpc/platforms/86xx/Kconfig source arch/powerpc/platforms/8xx/Kconfig source arch/powerpc/platforms/cell/Kconfig +source arch/powerpc/platforms/ps3pf/Kconfig menu "Kernel options"
@@ -917,7 +926,7 @@ config PCI bool "PCI support" if 40x || CPM2 || PPC_83xx || PPC_85xx || PPC_86xx \ - || PPC_MPC52xx || (EMBEDDED && PPC_ISERIES) || MPC7448HPC2 + || PPC_MPC52xx || (EMBEDDED && PPC_ISERIES) || MPC7448HPC2 || PS3PF default y if !40x && !CPM2 && !8xx && !APUS && !PPC_83xx \ && !PPC_85xx && !PPC_86xx default PCI_PERMEDIA if !4xx && !CPM2 && !8xx && APUS
arch/powerpc/platforms/Makefile +1 -0
@@ -16,4 +16,5 @@ obj-$(CONFIG_PPC_MAPLE) += maple/ obj-$(CONFIG_PPC_PASEMI) += pasemi/ obj-$(CONFIG_PPC_CELL) += cell/ +obj-$(CONFIG_PS3PF) += ps3pf/ obj-$(CONFIG_EMBEDDED6xx) += embedded6xx/
arch/powerpc/platforms/ps3pf/Kconfig new file +32 -0
@@ -0,0 +1,32 @@ +menu "PS3 Platform Options" + depends on PS3PF + +config PS3PF_HTAB_SIZE + depends on PS3PF + int "PS3 Platform pagetable size" + range 18 20 + default 20 + help + This option is only for experts who may have the desire to fine + tune the pagetable size on their system. The value here is + expressed as the log2 of the page table size. Valid values are + 18, 19, and 20, corresponding to 256KB, 512KB and 1MB respectively. + + If unsure, choose the default (20) with the confidence that your + system will have optimal runtime performance. + +config PS3PF_DYNAMIC_DMA + depends on PS3PF && EXPERIMENTAL + bool "PS3 Platform dynamic DMA page table management" + default n + help + This option will enable kernel support to take advantage of the + per device dynamic DMA page table management provided by the Cell + processor's IO Controller. This support incurs some runtime + overhead and also slightly increases kernel memory usage. The + current implementation should be considered experimental. + + This support is mainly for Linux kernel development. If unsure, + say N. + +endmenu
arch/powerpc/platforms/ps3pf/Makefile new file +2 -0
@@ -0,0 +1,2 @@ +obj-y += setup.o mm.o smp.o time.o hvcall.o htab.o repository.o +obj-y += interrupt.o exports.o
arch/powerpc/platforms/ps3pf/mm.c new file +827 -0
827 lines not on this page · raw message
arch/powerpc/platforms/ps3pf/platform.h new file +59 -0
59 lines not on this page · raw message
arch/powerpc/platforms/ps3pf/setup.c new file +173 -0
173 lines not on this page · raw message
arch/powerpc/platforms/ps3pf/smp.c new file +158 -0
158 lines not on this page · raw message
arch/powerpc/platforms/ps3pf/time.c new file +104 -0
104 lines not on this page · raw message
include/asm-powerpc/ps3pf.h new file +250 -0
250 lines not on this page · raw message
Quoted 2 lines · Geoff Levand
This adds the core platform support for the PS3 game console and other platforms using the PS3 Platform hypervisor.
Still this uses the braindead ps3pf plattform name, please get rid of it ASAP!