| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | #ifndef _ASM_MACH_TOPOLOGY_H
 | 
					
						
							|  |  |  | #define _ASM_MACH_TOPOLOGY_H	1
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #include <asm/sn/hub.h>
 | 
					
						
							| 
									
										
										
										
											2007-10-11 23:46:05 +01:00
										 |  |  | #include <asm/sn/types.h>
 | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | #include <asm/mmzone.h>
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2007-10-11 23:46:05 +01:00
										 |  |  | struct cpuinfo_ip27 { | 
					
						
							|  |  |  | //	cpuid_t		p_cpuid;	/* PROM assigned cpuid */
 | 
					
						
							|  |  |  | 	cnodeid_t	p_nodeid;	/* my node ID in compact-id-space */ | 
					
						
							|  |  |  | 	nasid_t		p_nasid;	/* my node ID in numa-as-id-space */ | 
					
						
							|  |  |  | 	unsigned char	p_slice;	/* Physical position on node board */ | 
					
						
							|  |  |  | #if 0
 | 
					
						
							|  |  |  | 	unsigned long		loops_per_sec; | 
					
						
							|  |  |  | 	unsigned long		ipi_count; | 
					
						
							|  |  |  | 	unsigned long		irq_attempt[NR_IRQS]; | 
					
						
							|  |  |  | 	unsigned long		smp_local_irq_count; | 
					
						
							|  |  |  | 	unsigned long		prof_multiplier; | 
					
						
							|  |  |  | 	unsigned long		prof_counter; | 
					
						
							|  |  |  | #endif
 | 
					
						
							|  |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | extern struct cpuinfo_ip27 sn_cpu_info[NR_CPUS]; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #define cpu_to_node(cpu)	(sn_cpu_info[(cpu)].p_nodeid)
 | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | #define parent_node(node)	(node)
 | 
					
						
							| 
									
										
										
										
											2010-01-06 15:55:13 +11:00
										 |  |  | #define cpumask_of_node(node)	((node) == -1 ?				\
 | 
					
						
							|  |  |  | 				 cpu_all_mask :				\ | 
					
						
							|  |  |  | 				 &hub_data(node)->h_cpus) | 
					
						
							| 
									
										
										
										
											2005-09-15 08:52:34 +00:00
										 |  |  | struct pci_bus; | 
					
						
							|  |  |  | extern int pcibus_to_node(struct pci_bus *); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-12-26 22:23:40 +10:30
										 |  |  | #define cpumask_of_pcibus(bus)	(cpu_online_mask)
 | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  | extern unsigned char __node_distances[MAX_COMPACT_NODES][MAX_COMPACT_NODES]; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #define node_distance(from, to)	(__node_distances[(from)][(to)])
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-04-23 18:55:59 +03:00
										 |  |  | #include <asm-generic/topology.h>
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | #endif /* _ASM_MACH_TOPOLOGY_H */
 |