1 #ifndef _ASM_MACH_TOPOLOGY_H
2 #define _ASM_MACH_TOPOLOGY_H 1
4 #include <asm/sn/arch.h>
5 #include <asm/sn/hub.h>
6 #include <asm/mmzone.h>
8 #define cpu_to_node(cpu) (cpu_data[(cpu)].p_nodeid)
9 #define parent_node(node) (node)
10 #define node_to_cpumask(node) (hub_data(node)->h_cpus)
11 #define node_to_first_cpu(node) (first_cpu(node_to_cpumask(node)))
13 extern int pcibus_to_node(struct pci_bus *);
15 #define pcibus_to_cpumask(bus) (cpu_online_map)
17 extern unsigned char __node_distances[MAX_COMPACT_NODES][MAX_COMPACT_NODES];
19 #define node_distance(from, to) (__node_distances[(from)][(to)])
21 /* sched_domains SD_NODE_INIT for SGI IP27 machines */
22 #define SD_NODE_INIT (struct sched_domain) { \
23 .span = CPU_MASK_NONE, \
29 .imbalance_pct = 125, \
30 .cache_nice_tries = 1, \
31 .per_cpu_gain = 100, \
32 .flags = SD_LOAD_BALANCE \
35 .last_balance = jiffies, \
36 .balance_interval = 1, \
37 .nr_balance_failed = 0, \
40 #endif /* _ASM_MACH_TOPOLOGY_H */