
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/include/asm-ppc64/page.h |    7 ++++---
 1 files changed, 4 insertions(+), 3 deletions(-)

diff -puN include/asm-ppc64/page.h~E-create-__boot-ppc64 include/asm-ppc64/page.h
--- memhotplug/include/asm-ppc64/page.h~E-create-__boot-ppc64	Thu Aug  5 09:41:10 2004
+++ memhotplug-dave/include/asm-ppc64/page.h	Thu Aug  5 09:41:10 2004
@@ -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)
 
 /* Not 100% correct, for use by /dev/mem only */
 extern int page_is_ram(unsigned long physaddr);
@@ -226,8 +229,6 @@ extern int page_is_ram(unsigned long phy
 
 #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)

_
