blob: a6e424d185d063bdddd43719e6a994fad6902c17 [file] [log] [blame]
Sam Ravnborgf5e706a2008-07-17 21:55:51 -07001/* 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
Sam Ravnborgf5e706a2008-07-17 21:55:51 -07009#ifndef __ASSEMBLY__
10
Sam Ravnborgf5e706a2008-07-17 21:55:51 -070011typedef struct {
12 /* Dcache line 1 */
13 unsigned int __softirq_pending; /* must be 1st, see rtrap.S */
David S. Millere5553a62009-01-29 21:22:47 -080014 unsigned int __nmi_count;
Sam Ravnborgf5e706a2008-07-17 21:55:51 -070015 unsigned long clock_tick; /* %tick's per second */
16 unsigned long __pad;
David S. Millerdaecbf52010-04-06 17:38:52 -070017 unsigned int irq0_irqs;
Sam Ravnborgf5e706a2008-07-17 21:55:51 -070018 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 int core_id;
28 int proc_id;
29} cpuinfo_sparc;
30
31DECLARE_PER_CPU(cpuinfo_sparc, __cpu_data);
32#define cpu_data(__cpu) per_cpu(__cpu_data, (__cpu))
Christoph Lameter494fc422014-08-17 12:30:54 -050033#define local_cpu_data() (*this_cpu_ptr(&__cpu_data))
Sam Ravnborgf5e706a2008-07-17 21:55:51 -070034
Sam Ravnborgf5e706a2008-07-17 21:55:51 -070035#endif /* !(__ASSEMBLY__) */
36
David S. Miller19f0fa32009-04-01 01:26:43 -070037#include <asm/trap_block.h>
Sam Ravnborgf5e706a2008-07-17 21:55:51 -070038
39#endif /* _SPARC64_CPUDATA_H */