blob: fb78a5d3b60b628c336b6451928b7653ec7fc5cd [file] [log] [blame]
Catalin Marinas272d01b2016-11-03 18:34:34 +00001/*
2 * arch/arm64/include/asm/cpucaps.h
3 *
4 * Copyright (C) 2016 ARM Ltd.
5 *
6 * This program is free software: you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18#ifndef __ASM_CPUCAPS_H
19#define __ASM_CPUCAPS_H
20
21#define ARM64_WORKAROUND_CLEAN_CACHE 0
22#define ARM64_WORKAROUND_DEVICE_LOAD_ACQUIRE 1
23#define ARM64_WORKAROUND_845719 2
24#define ARM64_HAS_SYSREG_GIC_CPUIF 3
25#define ARM64_HAS_PAN 4
26#define ARM64_HAS_LSE_ATOMICS 5
27#define ARM64_WORKAROUND_CAVIUM_23154 6
28#define ARM64_WORKAROUND_834220 7
29#define ARM64_HAS_NO_HW_PREFETCH 8
30#define ARM64_HAS_UAO 9
31#define ARM64_ALT_PAN_NOT_UAO 10
32#define ARM64_HAS_VIRT_HOST_EXTN 11
33#define ARM64_WORKAROUND_CAVIUM_27456 12
34#define ARM64_HAS_32BIT_EL0 13
35#define ARM64_HYP_OFFSET_LOW 14
36#define ARM64_MISMATCHED_CACHE_LINE_SIZE 15
Linus Torvaldsf4000cd92016-12-13 16:39:21 -080037#define ARM64_HAS_NO_FPSIMD 16
Christopher Covingtond9ff80f2017-01-31 12:50:19 -050038#define ARM64_WORKAROUND_REPEAT_TLBI 17
Christopher Covington38fd94b2017-02-08 15:08:37 -050039#define ARM64_WORKAROUND_QCOM_FALKOR_E1003 18
Catalin Marinas272d01b2016-11-03 18:34:34 +000040
Christopher Covington38fd94b2017-02-08 15:08:37 -050041#define ARM64_NCAPS 19
Catalin Marinas272d01b2016-11-03 18:34:34 +000042
43#endif /* __ASM_CPUCAPS_H */