36 lines
		
	
	
	
		
			780 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
	
		
			780 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
#ifndef _ASM_MACH_MMZONE_H
 | 
						|
#define _ASM_MACH_MMZONE_H
 | 
						|
 | 
						|
#include <asm/sn/addrs.h>
 | 
						|
#include <asm/sn/arch.h>
 | 
						|
#include <asm/sn/hub.h>
 | 
						|
 | 
						|
#define pa_to_nid(addr)		NASID_TO_COMPACT_NODEID(NASID_GET(addr))
 | 
						|
 | 
						|
#define LEVELS_PER_SLICE        128
 | 
						|
 | 
						|
struct slice_data {
 | 
						|
	unsigned long irq_enable_mask[2];
 | 
						|
	int level_to_irq[LEVELS_PER_SLICE];
 | 
						|
};
 | 
						|
 | 
						|
struct hub_data {
 | 
						|
	kern_vars_t	kern_vars;
 | 
						|
	DECLARE_BITMAP(h_bigwin_used, HUB_NUM_BIG_WINDOW);
 | 
						|
	cpumask_t	h_cpus;
 | 
						|
	unsigned long slice_map;
 | 
						|
	unsigned long irq_alloc_mask[2];
 | 
						|
	struct slice_data slice[2];
 | 
						|
};
 | 
						|
 | 
						|
struct node_data {
 | 
						|
	struct pglist_data pglist;
 | 
						|
	struct hub_data hub;
 | 
						|
};
 | 
						|
 | 
						|
extern struct node_data *__node_data[];
 | 
						|
 | 
						|
#define NODE_DATA(n)		(&__node_data[(n)]->pglist)
 | 
						|
#define hub_data(n)		(&__node_data[(n)]->hub)
 | 
						|
 | 
						|
#endif /* _ASM_MACH_MMZONE_H */
 |