1 /* cpudata.h: Per-cpu parameters.
2  *
3  * Copyright (C) 2003, 2005, 2006 David S. Miller (davem@davemloft.net)
4  */
5 
6 #ifndef _SPARC64_CPUDATA_H
7 #define _SPARC64_CPUDATA_H
8 
9 #ifndef __ASSEMBLY__
10 
11 typedef struct {
12 	/* Dcache line 1 */
13 	unsigned int	__softirq_pending; /* must be 1st, see rtrap.S */
14 	unsigned int	__nmi_count;
15 	unsigned long	clock_tick;	/* %tick's per second */
16 	unsigned long	__pad;
17 	unsigned int	irq0_irqs;
18 	unsigned int	__pad2;
19 
20 	/* Dcache line 2, rarely used */
21 	unsigned int	dcache_size;
22 	unsigned int	dcache_line_size;
23 	unsigned int	icache_size;
24 	unsigned int	icache_line_size;
25 	unsigned int	ecache_size;
26 	unsigned int	ecache_line_size;
27 	unsigned short	sock_id;
28 	unsigned short	core_id;
29 	int		proc_id;
30 } cpuinfo_sparc;
31 
32 DECLARE_PER_CPU(cpuinfo_sparc, __cpu_data);
33 #define cpu_data(__cpu)		per_cpu(__cpu_data, (__cpu))
34 #define local_cpu_data()	(*this_cpu_ptr(&__cpu_data))
35 
36 #endif /* !(__ASSEMBLY__) */
37 
38 #include <asm/trap_block.h>
39 
40 #endif /* _SPARC64_CPUDATA_H */
41