blob: 666d6b5c0440416537783ceabc7c9bce0520ac39 [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001/* SPDX-License-Identifier: GPL-2.0 */
Sam Ravnborgf5e706a2008-07-17 21:55:51 -07002/* cpudata.h: Per-cpu parameters.
3 *
4 * Copyright (C) 2003, 2005, 2006 David S. Miller (davem@davemloft.net)
5 */
6
7#ifndef _SPARC64_CPUDATA_H
8#define _SPARC64_CPUDATA_H
9
Sam Ravnborgf5e706a2008-07-17 21:55:51 -070010#ifndef __ASSEMBLY__
11
Sam Ravnborgf5e706a2008-07-17 21:55:51 -070012typedef struct {
13 /* Dcache line 1 */
14 unsigned int __softirq_pending; /* must be 1st, see rtrap.S */
David S. Millere5553a62009-01-29 21:22:47 -080015 unsigned int __nmi_count;
Sam Ravnborgf5e706a2008-07-17 21:55:51 -070016 unsigned long clock_tick; /* %tick's per second */
17 unsigned long __pad;
David S. Millerdaecbf52010-04-06 17:38:52 -070018 unsigned int irq0_irqs;
Sam Ravnborgf5e706a2008-07-17 21:55:51 -070019 unsigned int __pad2;
20
21 /* Dcache line 2, rarely used */
22 unsigned int dcache_size;
23 unsigned int dcache_line_size;
24 unsigned int icache_size;
25 unsigned int icache_line_size;
26 unsigned int ecache_size;
27 unsigned int ecache_line_size;
Atish Patrad6247162016-10-19 18:33:29 -060028 unsigned short sock_id; /* physical package */
chris hyseracc455c2015-04-22 12:28:31 -040029 unsigned short core_id;
Atish Patrad6247162016-10-19 18:33:29 -060030 unsigned short max_cache_id; /* groupings of highest shared cache */
31 unsigned short proc_id; /* strand (aka HW thread) id */
Sam Ravnborgf5e706a2008-07-17 21:55:51 -070032} cpuinfo_sparc;
33
34DECLARE_PER_CPU(cpuinfo_sparc, __cpu_data);
35#define cpu_data(__cpu) per_cpu(__cpu_data, (__cpu))
Christoph Lameter494fc422014-08-17 12:30:54 -050036#define local_cpu_data() (*this_cpu_ptr(&__cpu_data))
Sam Ravnborgf5e706a2008-07-17 21:55:51 -070037
Sam Ravnborgf5e706a2008-07-17 21:55:51 -070038#endif /* !(__ASSEMBLY__) */
39
David S. Miller19f0fa32009-04-01 01:26:43 -070040#include <asm/trap_block.h>
Sam Ravnborgf5e706a2008-07-17 21:55:51 -070041
42#endif /* _SPARC64_CPUDATA_H */