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#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
20
21#ifdef CONFIG_MEMORY_HOTPLUG
22extern void create_section_mapping(unsigned long start, unsigned long end);
23#ifdef CONFIG_NUMA
24extern int hot_add_scn_to_nid(unsigned long scn_addr);
25#else
26static inline int hot_add_scn_to_nid(unsigned long scn_addr)
27{
28	return 0;
29}
30#endif /* CONFIG_NUMA */
31#endif /* CONFIG_MEMORY_HOTPLUG */
32
33#endif /* CONFIG_SPARSEMEM */
34
35#endif /* __KERNEL__ */
36#endif /* _ASM_POWERPC_SPARSEMEM_H */
37