1 #ifndef _ASM_POWERPC_SPARSEMEM_H 2 #define _ASM_POWERPC_SPARSEMEM_H 1 3 #ifdef __KERNEL__ 4 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 10 */ 11 #define SECTION_SIZE_BITS 24 12 13 #define MAX_PHYSADDR_BITS 46 14 #define MAX_PHYSMEM_BITS 46 15 16 #endif /* CONFIG_SPARSEMEM */ 17 18 #ifdef CONFIG_MEMORY_HOTPLUG 19 extern int create_section_mapping(unsigned long start, unsigned long end); 20 extern int remove_section_mapping(unsigned long start, unsigned long end); 21 #ifdef CONFIG_NUMA 22 extern int hot_add_scn_to_nid(unsigned long scn_addr); 23 #else 24 static inline int hot_add_scn_to_nid(unsigned long scn_addr) 25 { 26 return 0; 27 } 28 #endif /* CONFIG_NUMA */ 29 #endif /* CONFIG_MEMORY_HOTPLUG */ 30 31 #endif /* __KERNEL__ */ 32 #endif /* _ASM_POWERPC_SPARSEMEM_H */ 33