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 #include <linux/percpu.h>
12 #include <linux/threads.h>
13 
14 typedef struct {
15 	/* Dcache line 1 */
16 	unsigned int	__softirq_pending; /* must be 1st, see rtrap.S */
17 	unsigned int	__nmi_count;
18 	unsigned long	clock_tick;	/* %tick's per second */
19 	unsigned long	__pad;
20 	unsigned int	irq0_irqs;
21 	unsigned int	__pad2;
22 
23 	/* Dcache line 2, rarely used */
24 	unsigned int	dcache_size;
25 	unsigned int	dcache_line_size;
26 	unsigned int	icache_size;
27 	unsigned int	icache_line_size;
28 	unsigned int	ecache_size;
29 	unsigned int	ecache_line_size;
30 	int		core_id;
31 	int		proc_id;
32 } cpuinfo_sparc;
33 
34 DECLARE_PER_CPU(cpuinfo_sparc, __cpu_data);
35 #define cpu_data(__cpu)		per_cpu(__cpu_data, (__cpu))
36 #define local_cpu_data()	__get_cpu_var(__cpu_data)
37 
38 extern const struct seq_operations cpuinfo_op;
39 
40 #endif /* !(__ASSEMBLY__) */
41 
42 #include <asm/trap_block.h>
43 
44 #endif /* _SPARC64_CPUDATA_H */
45