Linux 5.7.6
[linux/fpc-iii.git] / arch / nios2 / include / asm / cpuinfo.h
blob61349e003a141dbc7063ff057c7742785756d206
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3 * Copyright (C) 2011 Tobias Klauser <tklauser@distanz.ch>
4 */
6 #ifndef _ASM_NIOS2_CPUINFO_H
7 #define _ASM_NIOS2_CPUINFO_H
9 #include <linux/types.h>
11 struct cpuinfo {
12 /* Core CPU configuration */
13 char cpu_impl[12];
14 u32 cpu_clock_freq;
15 bool mmu;
16 bool has_div;
17 bool has_mul;
18 bool has_mulx;
19 bool has_bmx;
20 bool has_cdx;
22 /* CPU caches */
23 u32 icache_line_size;
24 u32 icache_size;
25 u32 dcache_line_size;
26 u32 dcache_size;
28 /* TLB */
29 u32 tlb_pid_num_bits; /* number of bits used for the PID in TLBMISC */
30 u32 tlb_num_ways;
31 u32 tlb_num_ways_log2;
32 u32 tlb_num_entries;
33 u32 tlb_num_lines;
34 u32 tlb_ptr_sz;
36 /* Addresses */
37 u32 reset_addr;
38 u32 exception_addr;
39 u32 fast_tlb_miss_exc_addr;
42 extern struct cpuinfo cpuinfo;
44 extern void setup_cpuinfo(void);
46 #endif /* _ASM_NIOS2_CPUINFO_H */