[POWERPC] ps3: add lpar addressing
Geoff Levand [Wed, 22 Nov 2006 23:46:57 +0000 (00:46 +0100)]
Adds some needed bits for a config option PS3_USE_LPAR_ADDR that disables
the PS3 lpar address translation mechanism.  This is a currently needed
workaround for limitations in the design of the generic cell spu support.

Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
Signed-off-by: Arnd Bergmann <arnd.bergmann@de.ibm.com>

arch/powerpc/platforms/ps3/Kconfig
include/asm-powerpc/sparsemem.h

index f023719..451bfcd 100644 (file)
@@ -29,4 +29,15 @@ config PS3_DYNAMIC_DMA
          This support is mainly for Linux kernel development.  If unsure,
          say N.
 
+config PS3_USE_LPAR_ADDR
+       depends on PPC_PS3 && EXPERIMENTAL
+       bool "PS3 use lpar address space"
+       default y
+       help
+         This option is solely for experimentation by experts.  Disables
+         translation of lpar addresses.  SPE support currently won't work
+         without this set to y.
+
+         If you have any doubt, choose the default y.
+
 endmenu
index 38b1ea3..48ad807 100644 (file)
@@ -9,8 +9,14 @@
  * MAX_PHYSMEM_BITS            2^N: how much memory we can have in that space
  */
 #define SECTION_SIZE_BITS       24
+
+#if defined(CONFIG_PS3_USE_LPAR_ADDR)
+#define MAX_PHYSADDR_BITS       47
+#define MAX_PHYSMEM_BITS        47
+#else
 #define MAX_PHYSADDR_BITS       44
 #define MAX_PHYSMEM_BITS        44
+#endif
 
 #ifdef CONFIG_MEMORY_HOTPLUG
 extern void create_section_mapping(unsigned long start, unsigned long end);