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 21extern 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 31extern int numa_cpu_lookup_table[]; 32extern cpumask_t numa_cpumask_lookup_table[]; 33#ifdef CONFIG_MEMORY_HOTPLUG 34extern 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