Merge git://git.linux-nfs.org/pub/linux/nfs-2.6
[pv_ops_mirror.git] / include / asm-powerpc / sparsemem.h
blob48ad807a0b8a80ce49788e49935d081585166009
1 #ifndef _ASM_POWERPC_SPARSEMEM_H
2 #define _ASM_POWERPC_SPARSEMEM_H 1
3 #ifdef __KERNEL__
5 #ifdef CONFIG_SPARSEMEM
6 /*
7 * SECTION_SIZE_BITS 2^N: how big each section will be
8 * MAX_PHYSADDR_BITS 2^N: how much physical address space we have
9 * MAX_PHYSMEM_BITS 2^N: how much memory we can have in that space
11 #define SECTION_SIZE_BITS 24
13 #if defined(CONFIG_PS3_USE_LPAR_ADDR)
14 #define MAX_PHYSADDR_BITS 47
15 #define MAX_PHYSMEM_BITS 47
16 #else
17 #define MAX_PHYSADDR_BITS 44
18 #define MAX_PHYSMEM_BITS 44
19 #endif
21 #ifdef CONFIG_MEMORY_HOTPLUG
22 extern void create_section_mapping(unsigned long start, unsigned long end);
23 #ifdef CONFIG_NUMA
24 extern int hot_add_scn_to_nid(unsigned long scn_addr);
25 #else
26 static inline int hot_add_scn_to_nid(unsigned long scn_addr)
28 return 0;
30 #endif /* CONFIG_NUMA */
31 #endif /* CONFIG_MEMORY_HOTPLUG */
33 #endif /* CONFIG_SPARSEMEM */
35 #endif /* __KERNEL__ */
36 #endif /* _ASM_POWERPC_SPARSEMEM_H */