
__pa is used before it is included via linux/nonlinear.h, fix that by
delcaring it again.  Also, we need one of those shifts declared in
asm/nonlinear.h, so include that as well.

Signed-off-by: Joel Schopp <jschopp@austin.ibm.com>
Signed-off-by: Dave Hansen <haveblue@us.ibm.com>
---

 memhotplug-dave/include/asm-ppc64/page.h |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletion(-)

diff -puN include/asm-ppc64/page.h~G4.2-__pa-FIXME include/asm-ppc64/page.h
--- memhotplug/include/asm-ppc64/page.h~G4.2-__pa-FIXME	2004-11-12 16:51:54.000000000 -0800
+++ memhotplug-dave/include/asm-ppc64/page.h	2004-11-12 16:51:54.000000000 -0800
@@ -11,6 +11,7 @@
  */
 
 #include <linux/config.h>
+#include <asm/nonlinear.h>
 
 #ifdef __ASSEMBLY__
   #define ASM_CONST(x) x
@@ -184,6 +185,8 @@ static inline int get_order(unsigned lon
 #ifndef CONFIG_NONLINEAR
 #define __pa(x)		__boot_pa(x)
 #define __va(x)		__boot_va(x)
+#else
+static inline unsigned long __pa(const void *ptr_addr);
 #endif
 
 /**
@@ -200,7 +203,7 @@ static inline int get_order(unsigned lon
  */
 static inline unsigned long virt_to_phys(volatile void * address)
 {
-	return __pa((unsigned long)address);
+	return __pa((void *)address);
 }
 
 
_
