
CONFIG_NONLINEAR differentiates between the layout during early boot-time,
and later at runtime.  During early boot, before the nonlinear tables
are initialized, the layout is assumed to be flat, and the __boot variants
are used.

Create these macros now, so that the nonlinear patch can use them, but use
the default linear implementation for now.

Signed-off-by: Dave Hansen <haveblue@us.ibm.com>
---

 memhotplug-dave/arch/ppc64/Kconfig       |    4 ++++
 memhotplug-dave/include/asm-ppc64/page.h |    7 ++++---
 2 files changed, 8 insertions(+), 3 deletions(-)

diff -puN include/asm-ppc64/page.h~D1-create-__boot-ppc64 include/asm-ppc64/page.h
--- memhotplug/include/asm-ppc64/page.h~D1-create-__boot-ppc64	2004-12-10 13:52:36.000000000 -0800
+++ memhotplug-dave/include/asm-ppc64/page.h	2004-12-10 13:52:36.000000000 -0800
@@ -179,7 +179,10 @@ static inline int get_order(unsigned lon
 	return order;
 }
 
-#define __pa(x) ((unsigned long)(x)-PAGE_OFFSET)
+#define __boot_pa(x)   ((unsigned long)(x)-PAGE_OFFSET)
+#define __boot_va(x)   ((void *)((unsigned long)(x) + KERNELBASE))
+#define __pa(x)		__boot_pa(x)
+#define __va(x)		__boot_va(x)
 
 extern int page_is_ram(unsigned long pfn);
 
@@ -215,8 +218,6 @@ extern int page_is_ram(unsigned long pfn
 #define __bpn_to_ba(x) ((((unsigned long)(x))<<PAGE_SHIFT) + KERNELBASE)
 #define __ba_to_bpn(x) ((((unsigned long)(x)) & ~REGION_MASK) >> PAGE_SHIFT)
 
-#define __va(x) ((void *)((unsigned long)(x) + KERNELBASE))
-
 #ifdef CONFIG_DISCONTIGMEM
 #define page_to_pfn(page)	discontigmem_page_to_pfn(page)
 #define pfn_to_page(pfn)	discontigmem_pfn_to_page(pfn)
diff -puN arch/ppc64/Kconfig~D1-create-__boot-ppc64 arch/ppc64/Kconfig
--- memhotplug/arch/ppc64/Kconfig~D1-create-__boot-ppc64	2004-12-10 13:52:36.000000000 -0800
+++ memhotplug-dave/arch/ppc64/Kconfig	2004-12-10 13:52:36.000000000 -0800
@@ -204,6 +204,10 @@ config HMT
 	bool "Hardware multithreading"
 	depends on SMP && PPC_PSERIES
 
+config ARCH_HAS_BOOTPA
+	bool
+	default y
+
 config DISCONTIGMEM
 	bool "Discontiguous Memory Support"
 	depends on SMP && PPC_PSERIES
_
