1#ifndef __X86_MM_NUMA_INTERNAL_H
2#define __X86_MM_NUMA_INTERNAL_H
3
4#include <linux/types.h>
5#include <asm/numa.h>
6
7struct numa_memblk {
8	u64			start;
9	u64			end;
10	int			nid;
11};
12
13struct numa_meminfo {
14	int			nr_blks;
15	struct numa_memblk	blk[NR_NODE_MEMBLKS];
16};
17
18void __init numa_remove_memblk_from(int idx, struct numa_meminfo *mi);
19int __init numa_cleanup_meminfo(struct numa_meminfo *mi);
20void __init numa_reset_distance(void);
21
22void __init x86_numa_init(void);
23
24#ifdef CONFIG_NUMA_EMU
25void __init numa_emulation(struct numa_meminfo *numa_meminfo,
26			   int numa_dist_cnt);
27#else
28static inline void numa_emulation(struct numa_meminfo *numa_meminfo,
29				  int numa_dist_cnt)
30{ }
31#endif
32
33#endif	/* __X86_MM_NUMA_INTERNAL_H */
34