Skip to content

Commit b58ec8b

Browse files
committed
Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux
Pull arm64 fix from Will Deacon: "It's been pretty quiet on the fixes side of things for us, but Artem reported a build failure introduced during the merge window that appears with older GCCs that do not support asm goto. The fix is bigger than I'd like, but it's a mechnical move of some constants to break an include dependency between atomic.h and jump_label.h when !HAVE_JUMP_LABEL. Summary: - Fix build failure on compilers without asm goto" * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: arm64: Fix circular include of asm/lse.h through linux/jump_label.h
2 parents 17ce1b2 + 272d01b commit b58ec8b

4 files changed

Lines changed: 42 additions & 21 deletions

File tree

arch/arm64/include/asm/alternative.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#ifndef __ASM_ALTERNATIVE_H
22
#define __ASM_ALTERNATIVE_H
33

4-
#include <asm/cpufeature.h>
4+
#include <asm/cpucaps.h>
55
#include <asm/insn.h>
66

77
#ifndef __ASSEMBLY__

arch/arm64/include/asm/cpucaps.h

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
/*
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
37+
38+
#define ARM64_NCAPS 16
39+
40+
#endif /* __ASM_CPUCAPS_H */

arch/arm64/include/asm/cpufeature.h

Lines changed: 1 addition & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111

1212
#include <linux/jump_label.h>
1313

14+
#include <asm/cpucaps.h>
1415
#include <asm/hwcap.h>
1516
#include <asm/sysreg.h>
1617

@@ -24,25 +25,6 @@
2425
#define MAX_CPU_FEATURES (8 * sizeof(elf_hwcap))
2526
#define cpu_feature(x) ilog2(HWCAP_ ## x)
2627

27-
#define ARM64_WORKAROUND_CLEAN_CACHE 0
28-
#define ARM64_WORKAROUND_DEVICE_LOAD_ACQUIRE 1
29-
#define ARM64_WORKAROUND_845719 2
30-
#define ARM64_HAS_SYSREG_GIC_CPUIF 3
31-
#define ARM64_HAS_PAN 4
32-
#define ARM64_HAS_LSE_ATOMICS 5
33-
#define ARM64_WORKAROUND_CAVIUM_23154 6
34-
#define ARM64_WORKAROUND_834220 7
35-
#define ARM64_HAS_NO_HW_PREFETCH 8
36-
#define ARM64_HAS_UAO 9
37-
#define ARM64_ALT_PAN_NOT_UAO 10
38-
#define ARM64_HAS_VIRT_HOST_EXTN 11
39-
#define ARM64_WORKAROUND_CAVIUM_27456 12
40-
#define ARM64_HAS_32BIT_EL0 13
41-
#define ARM64_HYP_OFFSET_LOW 14
42-
#define ARM64_MISMATCHED_CACHE_LINE_SIZE 15
43-
44-
#define ARM64_NCAPS 16
45-
4628
#ifndef __ASSEMBLY__
4729

4830
#include <linux/kernel.h>

arch/arm64/include/asm/lse.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55

66
#include <linux/stringify.h>
77
#include <asm/alternative.h>
8-
#include <asm/cpufeature.h>
98

109
#ifdef __ASSEMBLER__
1110

0 commit comments

Comments
 (0)