1 /* 2 * Written by Kanoj Sarcar (kanoj@sgi.com) Aug 99 3 * 4 * PowerPC64 port: 5 * Copyright (C) 2002 Anton Blanchard, IBM Corp. 6 */ 7 #ifndef _ASM_MMZONE_H_ 8 #define _ASM_MMZONE_H_ 9 #ifdef __KERNEL__ 10 11 12 /* 13 * generic non-linear memory support: 14 * 15 * 1) we will not split memory into more chunks than will fit into the 16 * flags field of the struct page 17 */ 18 19 #ifdef CONFIG_NEED_MULTIPLE_NODES 20 21 extern struct pglist_data *node_data[]; 22 /* 23 * Return a pointer to the node data for node n. 24 */ 25 #define NODE_DATA(nid) (node_data[nid]) 26 27 /* 28 * Following are specific to this numa platform. 29 */ 30 31 extern int numa_cpu_lookup_table[]; 32 extern cpumask_t numa_cpumask_lookup_table[]; 33 #ifdef CONFIG_MEMORY_HOTPLUG 34 extern unsigned long max_pfn; 35 #endif 36 37 /* 38 * Following are macros that each numa implmentation must define. 39 */ 40 41 #define node_start_pfn(nid) (NODE_DATA(nid)->node_start_pfn) 42 #define node_end_pfn(nid) (NODE_DATA(nid)->node_end_pfn) 43 44 #endif /* CONFIG_NEED_MULTIPLE_NODES */ 45 46 #endif /* __KERNEL__ */ 47 #endif /* _ASM_MMZONE_H_ */ 48