Merge tag 'powerpc-4.14-6' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc...
[sfrench/cifs-2.6.git] / arch / powerpc / include / asm / mmzone.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * Written by Kanoj Sarcar (kanoj@sgi.com) Aug 99
4  *
5  * PowerPC64 port:
6  * Copyright (C) 2002 Anton Blanchard, IBM Corp.
7  */
8 #ifndef _ASM_MMZONE_H_
9 #define _ASM_MMZONE_H_
10 #ifdef __KERNEL__
11
12 #include <linux/cpumask.h>
13
14 /*
15  * generic non-linear memory support:
16  *
17  * 1) we will not split memory into more chunks than will fit into the
18  *    flags field of the struct page
19  */
20
21 #ifdef CONFIG_NEED_MULTIPLE_NODES
22
23 extern struct pglist_data *node_data[];
24 /*
25  * Return a pointer to the node data for node n.
26  */
27 #define NODE_DATA(nid)          (node_data[nid])
28
29 /*
30  * Following are specific to this numa platform.
31  */
32
33 extern int numa_cpu_lookup_table[];
34 extern cpumask_var_t node_to_cpumask_map[];
35 #ifdef CONFIG_MEMORY_HOTPLUG
36 extern unsigned long max_pfn;
37 u64 memory_hotplug_max(void);
38 #else
39 #define memory_hotplug_max() memblock_end_of_DRAM()
40 #endif
41
42 #else
43 #define memory_hotplug_max() memblock_end_of_DRAM()
44 #endif /* CONFIG_NEED_MULTIPLE_NODES */
45 #ifdef CONFIG_FA_DUMP
46 #define __HAVE_ARCH_RESERVED_KERNEL_PAGES
47 #endif
48
49 #endif /* __KERNEL__ */
50 #endif /* _ASM_MMZONE_H_ */