KVM: arm64: pkvm: Consolidate include files
authorMarc Zyngier <maz@kernel.org>
Wed, 13 Oct 2021 12:03:43 +0000 (13:03 +0100)
committerMarc Zyngier <maz@kernel.org>
Mon, 18 Oct 2021 15:57:09 +0000 (16:57 +0100)
kvm_fixed_config.h is pkvm specific, and would be better placed
near its users. At the same time, include/nvhe/sys_regs.h is now
almost empty.

Merge the two into arch/arm64/kvm/hyp/include/nvhe/fixed_config.h.

Signed-off-by: Marc Zyngier <maz@kernel.org>
Reviewed-by: Fuad Tabba <tabba@google.com>
Tested-by: Fuad Tabba <tabba@google.com>
Link: https://lore.kernel.org/r/20211013120346.2926621-9-maz@kernel.org
arch/arm64/include/asm/kvm_fixed_config.h [deleted file]
arch/arm64/kvm/hyp/include/nvhe/fixed_config.h [new file with mode: 0644]
arch/arm64/kvm/hyp/include/nvhe/sys_regs.h [deleted file]
arch/arm64/kvm/hyp/nvhe/pkvm.c
arch/arm64/kvm/hyp/nvhe/setup.c
arch/arm64/kvm/hyp/nvhe/switch.c
arch/arm64/kvm/hyp/nvhe/sys_regs.c

diff --git a/arch/arm64/include/asm/kvm_fixed_config.h b/arch/arm64/include/asm/kvm_fixed_config.h
deleted file mode 100644 (file)
index 0ed0692..0000000
+++ /dev/null
@@ -1,195 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0-only */
-/*
- * Copyright (C) 2021 Google LLC
- * Author: Fuad Tabba <tabba@google.com>
- */
-
-#ifndef __ARM64_KVM_FIXED_CONFIG_H__
-#define __ARM64_KVM_FIXED_CONFIG_H__
-
-#include <asm/sysreg.h>
-
-/*
- * This file contains definitions for features to be allowed or restricted for
- * guest virtual machines, depending on the mode KVM is running in and on the
- * type of guest that is running.
- *
- * The ALLOW masks represent a bitmask of feature fields that are allowed
- * without any restrictions as long as they are supported by the system.
- *
- * The RESTRICT_UNSIGNED masks, if present, represent unsigned fields for
- * features that are restricted to support at most the specified feature.
- *
- * If a feature field is not present in either, than it is not supported.
- *
- * The approach taken for protected VMs is to allow features that are:
- * - Needed by common Linux distributions (e.g., floating point)
- * - Trivial to support, e.g., supporting the feature does not introduce or
- * require tracking of additional state in KVM
- * - Cannot be trapped or prevent the guest from using anyway
- */
-
-/*
- * Allow for protected VMs:
- * - Floating-point and Advanced SIMD
- * - Data Independent Timing
- */
-#define PVM_ID_AA64PFR0_ALLOW (\
-       ARM64_FEATURE_MASK(ID_AA64PFR0_FP) | \
-       ARM64_FEATURE_MASK(ID_AA64PFR0_ASIMD) | \
-       ARM64_FEATURE_MASK(ID_AA64PFR0_DIT) \
-       )
-
-/*
- * Restrict to the following *unsigned* features for protected VMs:
- * - AArch64 guests only (no support for AArch32 guests):
- *     AArch32 adds complexity in trap handling, emulation, condition codes,
- *     etc...
- * - RAS (v1)
- *     Supported by KVM
- */
-#define PVM_ID_AA64PFR0_RESTRICT_UNSIGNED (\
-       FIELD_PREP(ARM64_FEATURE_MASK(ID_AA64PFR0_EL0), ID_AA64PFR0_ELx_64BIT_ONLY) | \
-       FIELD_PREP(ARM64_FEATURE_MASK(ID_AA64PFR0_EL1), ID_AA64PFR0_ELx_64BIT_ONLY) | \
-       FIELD_PREP(ARM64_FEATURE_MASK(ID_AA64PFR0_EL2), ID_AA64PFR0_ELx_64BIT_ONLY) | \
-       FIELD_PREP(ARM64_FEATURE_MASK(ID_AA64PFR0_EL3), ID_AA64PFR0_ELx_64BIT_ONLY) | \
-       FIELD_PREP(ARM64_FEATURE_MASK(ID_AA64PFR0_RAS), ID_AA64PFR0_RAS_V1) \
-       )
-
-/*
- * Allow for protected VMs:
- * - Branch Target Identification
- * - Speculative Store Bypassing
- */
-#define PVM_ID_AA64PFR1_ALLOW (\
-       ARM64_FEATURE_MASK(ID_AA64PFR1_BT) | \
-       ARM64_FEATURE_MASK(ID_AA64PFR1_SSBS) \
-       )
-
-/*
- * Allow for protected VMs:
- * - Mixed-endian
- * - Distinction between Secure and Non-secure Memory
- * - Mixed-endian at EL0 only
- * - Non-context synchronizing exception entry and exit
- */
-#define PVM_ID_AA64MMFR0_ALLOW (\
-       ARM64_FEATURE_MASK(ID_AA64MMFR0_BIGENDEL) | \
-       ARM64_FEATURE_MASK(ID_AA64MMFR0_SNSMEM) | \
-       ARM64_FEATURE_MASK(ID_AA64MMFR0_BIGENDEL0) | \
-       ARM64_FEATURE_MASK(ID_AA64MMFR0_EXS) \
-       )
-
-/*
- * Restrict to the following *unsigned* features for protected VMs:
- * - 40-bit IPA
- * - 16-bit ASID
- */
-#define PVM_ID_AA64MMFR0_RESTRICT_UNSIGNED (\
-       FIELD_PREP(ARM64_FEATURE_MASK(ID_AA64MMFR0_PARANGE), ID_AA64MMFR0_PARANGE_40) | \
-       FIELD_PREP(ARM64_FEATURE_MASK(ID_AA64MMFR0_ASID), ID_AA64MMFR0_ASID_16) \
-       )
-
-/*
- * Allow for protected VMs:
- * - Hardware translation table updates to Access flag and Dirty state
- * - Number of VMID bits from CPU
- * - Hierarchical Permission Disables
- * - Privileged Access Never
- * - SError interrupt exceptions from speculative reads
- * - Enhanced Translation Synchronization
- */
-#define PVM_ID_AA64MMFR1_ALLOW (\
-       ARM64_FEATURE_MASK(ID_AA64MMFR1_HADBS) | \
-       ARM64_FEATURE_MASK(ID_AA64MMFR1_VMIDBITS) | \
-       ARM64_FEATURE_MASK(ID_AA64MMFR1_HPD) | \
-       ARM64_FEATURE_MASK(ID_AA64MMFR1_PAN) | \
-       ARM64_FEATURE_MASK(ID_AA64MMFR1_SPECSEI) | \
-       ARM64_FEATURE_MASK(ID_AA64MMFR1_ETS) \
-       )
-
-/*
- * Allow for protected VMs:
- * - Common not Private translations
- * - User Access Override
- * - IESB bit in the SCTLR_ELx registers
- * - Unaligned single-copy atomicity and atomic functions
- * - ESR_ELx.EC value on an exception by read access to feature ID space
- * - TTL field in address operations.
- * - Break-before-make sequences when changing translation block size
- * - E0PDx mechanism
- */
-#define PVM_ID_AA64MMFR2_ALLOW (\
-       ARM64_FEATURE_MASK(ID_AA64MMFR2_CNP) | \
-       ARM64_FEATURE_MASK(ID_AA64MMFR2_UAO) | \
-       ARM64_FEATURE_MASK(ID_AA64MMFR2_IESB) | \
-       ARM64_FEATURE_MASK(ID_AA64MMFR2_AT) | \
-       ARM64_FEATURE_MASK(ID_AA64MMFR2_IDS) | \
-       ARM64_FEATURE_MASK(ID_AA64MMFR2_TTL) | \
-       ARM64_FEATURE_MASK(ID_AA64MMFR2_BBM) | \
-       ARM64_FEATURE_MASK(ID_AA64MMFR2_E0PD) \
-       )
-
-/*
- * No support for Scalable Vectors for protected VMs:
- *     Requires additional support from KVM, e.g., context-switching and
- *     trapping at EL2
- */
-#define PVM_ID_AA64ZFR0_ALLOW (0ULL)
-
-/*
- * No support for debug, including breakpoints, and watchpoints for protected
- * VMs:
- *     The Arm architecture mandates support for at least the Armv8 debug
- *     architecture, which would include at least 2 hardware breakpoints and
- *     watchpoints. Providing that support to protected guests adds
- *     considerable state and complexity. Therefore, the reserved value of 0 is
- *     used for debug-related fields.
- */
-#define PVM_ID_AA64DFR0_ALLOW (0ULL)
-#define PVM_ID_AA64DFR1_ALLOW (0ULL)
-
-/*
- * No support for implementation defined features.
- */
-#define PVM_ID_AA64AFR0_ALLOW (0ULL)
-#define PVM_ID_AA64AFR1_ALLOW (0ULL)
-
-/*
- * No restrictions on instructions implemented in AArch64.
- */
-#define PVM_ID_AA64ISAR0_ALLOW (\
-       ARM64_FEATURE_MASK(ID_AA64ISAR0_AES) | \
-       ARM64_FEATURE_MASK(ID_AA64ISAR0_SHA1) | \
-       ARM64_FEATURE_MASK(ID_AA64ISAR0_SHA2) | \
-       ARM64_FEATURE_MASK(ID_AA64ISAR0_CRC32) | \
-       ARM64_FEATURE_MASK(ID_AA64ISAR0_ATOMICS) | \
-       ARM64_FEATURE_MASK(ID_AA64ISAR0_RDM) | \
-       ARM64_FEATURE_MASK(ID_AA64ISAR0_SHA3) | \
-       ARM64_FEATURE_MASK(ID_AA64ISAR0_SM3) | \
-       ARM64_FEATURE_MASK(ID_AA64ISAR0_SM4) | \
-       ARM64_FEATURE_MASK(ID_AA64ISAR0_DP) | \
-       ARM64_FEATURE_MASK(ID_AA64ISAR0_FHM) | \
-       ARM64_FEATURE_MASK(ID_AA64ISAR0_TS) | \
-       ARM64_FEATURE_MASK(ID_AA64ISAR0_TLB) | \
-       ARM64_FEATURE_MASK(ID_AA64ISAR0_RNDR) \
-       )
-
-#define PVM_ID_AA64ISAR1_ALLOW (\
-       ARM64_FEATURE_MASK(ID_AA64ISAR1_DPB) | \
-       ARM64_FEATURE_MASK(ID_AA64ISAR1_APA) | \
-       ARM64_FEATURE_MASK(ID_AA64ISAR1_API) | \
-       ARM64_FEATURE_MASK(ID_AA64ISAR1_JSCVT) | \
-       ARM64_FEATURE_MASK(ID_AA64ISAR1_FCMA) | \
-       ARM64_FEATURE_MASK(ID_AA64ISAR1_LRCPC) | \
-       ARM64_FEATURE_MASK(ID_AA64ISAR1_GPA) | \
-       ARM64_FEATURE_MASK(ID_AA64ISAR1_GPI) | \
-       ARM64_FEATURE_MASK(ID_AA64ISAR1_FRINTTS) | \
-       ARM64_FEATURE_MASK(ID_AA64ISAR1_SB) | \
-       ARM64_FEATURE_MASK(ID_AA64ISAR1_SPECRES) | \
-       ARM64_FEATURE_MASK(ID_AA64ISAR1_BF16) | \
-       ARM64_FEATURE_MASK(ID_AA64ISAR1_DGH) | \
-       ARM64_FEATURE_MASK(ID_AA64ISAR1_I8MM) \
-       )
-
-#endif /* __ARM64_KVM_FIXED_CONFIG_H__ */
diff --git a/arch/arm64/kvm/hyp/include/nvhe/fixed_config.h b/arch/arm64/kvm/hyp/include/nvhe/fixed_config.h
new file mode 100644 (file)
index 0000000..747fc79
--- /dev/null
@@ -0,0 +1,200 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+/*
+ * Copyright (C) 2021 Google LLC
+ * Author: Fuad Tabba <tabba@google.com>
+ */
+
+#ifndef __ARM64_KVM_FIXED_CONFIG_H__
+#define __ARM64_KVM_FIXED_CONFIG_H__
+
+#include <asm/sysreg.h>
+
+/*
+ * This file contains definitions for features to be allowed or restricted for
+ * guest virtual machines, depending on the mode KVM is running in and on the
+ * type of guest that is running.
+ *
+ * The ALLOW masks represent a bitmask of feature fields that are allowed
+ * without any restrictions as long as they are supported by the system.
+ *
+ * The RESTRICT_UNSIGNED masks, if present, represent unsigned fields for
+ * features that are restricted to support at most the specified feature.
+ *
+ * If a feature field is not present in either, than it is not supported.
+ *
+ * The approach taken for protected VMs is to allow features that are:
+ * - Needed by common Linux distributions (e.g., floating point)
+ * - Trivial to support, e.g., supporting the feature does not introduce or
+ * require tracking of additional state in KVM
+ * - Cannot be trapped or prevent the guest from using anyway
+ */
+
+/*
+ * Allow for protected VMs:
+ * - Floating-point and Advanced SIMD
+ * - Data Independent Timing
+ */
+#define PVM_ID_AA64PFR0_ALLOW (\
+       ARM64_FEATURE_MASK(ID_AA64PFR0_FP) | \
+       ARM64_FEATURE_MASK(ID_AA64PFR0_ASIMD) | \
+       ARM64_FEATURE_MASK(ID_AA64PFR0_DIT) \
+       )
+
+/*
+ * Restrict to the following *unsigned* features for protected VMs:
+ * - AArch64 guests only (no support for AArch32 guests):
+ *     AArch32 adds complexity in trap handling, emulation, condition codes,
+ *     etc...
+ * - RAS (v1)
+ *     Supported by KVM
+ */
+#define PVM_ID_AA64PFR0_RESTRICT_UNSIGNED (\
+       FIELD_PREP(ARM64_FEATURE_MASK(ID_AA64PFR0_EL0), ID_AA64PFR0_ELx_64BIT_ONLY) | \
+       FIELD_PREP(ARM64_FEATURE_MASK(ID_AA64PFR0_EL1), ID_AA64PFR0_ELx_64BIT_ONLY) | \
+       FIELD_PREP(ARM64_FEATURE_MASK(ID_AA64PFR0_EL2), ID_AA64PFR0_ELx_64BIT_ONLY) | \
+       FIELD_PREP(ARM64_FEATURE_MASK(ID_AA64PFR0_EL3), ID_AA64PFR0_ELx_64BIT_ONLY) | \
+       FIELD_PREP(ARM64_FEATURE_MASK(ID_AA64PFR0_RAS), ID_AA64PFR0_RAS_V1) \
+       )
+
+/*
+ * Allow for protected VMs:
+ * - Branch Target Identification
+ * - Speculative Store Bypassing
+ */
+#define PVM_ID_AA64PFR1_ALLOW (\
+       ARM64_FEATURE_MASK(ID_AA64PFR1_BT) | \
+       ARM64_FEATURE_MASK(ID_AA64PFR1_SSBS) \
+       )
+
+/*
+ * Allow for protected VMs:
+ * - Mixed-endian
+ * - Distinction between Secure and Non-secure Memory
+ * - Mixed-endian at EL0 only
+ * - Non-context synchronizing exception entry and exit
+ */
+#define PVM_ID_AA64MMFR0_ALLOW (\
+       ARM64_FEATURE_MASK(ID_AA64MMFR0_BIGENDEL) | \
+       ARM64_FEATURE_MASK(ID_AA64MMFR0_SNSMEM) | \
+       ARM64_FEATURE_MASK(ID_AA64MMFR0_BIGENDEL0) | \
+       ARM64_FEATURE_MASK(ID_AA64MMFR0_EXS) \
+       )
+
+/*
+ * Restrict to the following *unsigned* features for protected VMs:
+ * - 40-bit IPA
+ * - 16-bit ASID
+ */
+#define PVM_ID_AA64MMFR0_RESTRICT_UNSIGNED (\
+       FIELD_PREP(ARM64_FEATURE_MASK(ID_AA64MMFR0_PARANGE), ID_AA64MMFR0_PARANGE_40) | \
+       FIELD_PREP(ARM64_FEATURE_MASK(ID_AA64MMFR0_ASID), ID_AA64MMFR0_ASID_16) \
+       )
+
+/*
+ * Allow for protected VMs:
+ * - Hardware translation table updates to Access flag and Dirty state
+ * - Number of VMID bits from CPU
+ * - Hierarchical Permission Disables
+ * - Privileged Access Never
+ * - SError interrupt exceptions from speculative reads
+ * - Enhanced Translation Synchronization
+ */
+#define PVM_ID_AA64MMFR1_ALLOW (\
+       ARM64_FEATURE_MASK(ID_AA64MMFR1_HADBS) | \
+       ARM64_FEATURE_MASK(ID_AA64MMFR1_VMIDBITS) | \
+       ARM64_FEATURE_MASK(ID_AA64MMFR1_HPD) | \
+       ARM64_FEATURE_MASK(ID_AA64MMFR1_PAN) | \
+       ARM64_FEATURE_MASK(ID_AA64MMFR1_SPECSEI) | \
+       ARM64_FEATURE_MASK(ID_AA64MMFR1_ETS) \
+       )
+
+/*
+ * Allow for protected VMs:
+ * - Common not Private translations
+ * - User Access Override
+ * - IESB bit in the SCTLR_ELx registers
+ * - Unaligned single-copy atomicity and atomic functions
+ * - ESR_ELx.EC value on an exception by read access to feature ID space
+ * - TTL field in address operations.
+ * - Break-before-make sequences when changing translation block size
+ * - E0PDx mechanism
+ */
+#define PVM_ID_AA64MMFR2_ALLOW (\
+       ARM64_FEATURE_MASK(ID_AA64MMFR2_CNP) | \
+       ARM64_FEATURE_MASK(ID_AA64MMFR2_UAO) | \
+       ARM64_FEATURE_MASK(ID_AA64MMFR2_IESB) | \
+       ARM64_FEATURE_MASK(ID_AA64MMFR2_AT) | \
+       ARM64_FEATURE_MASK(ID_AA64MMFR2_IDS) | \
+       ARM64_FEATURE_MASK(ID_AA64MMFR2_TTL) | \
+       ARM64_FEATURE_MASK(ID_AA64MMFR2_BBM) | \
+       ARM64_FEATURE_MASK(ID_AA64MMFR2_E0PD) \
+       )
+
+/*
+ * No support for Scalable Vectors for protected VMs:
+ *     Requires additional support from KVM, e.g., context-switching and
+ *     trapping at EL2
+ */
+#define PVM_ID_AA64ZFR0_ALLOW (0ULL)
+
+/*
+ * No support for debug, including breakpoints, and watchpoints for protected
+ * VMs:
+ *     The Arm architecture mandates support for at least the Armv8 debug
+ *     architecture, which would include at least 2 hardware breakpoints and
+ *     watchpoints. Providing that support to protected guests adds
+ *     considerable state and complexity. Therefore, the reserved value of 0 is
+ *     used for debug-related fields.
+ */
+#define PVM_ID_AA64DFR0_ALLOW (0ULL)
+#define PVM_ID_AA64DFR1_ALLOW (0ULL)
+
+/*
+ * No support for implementation defined features.
+ */
+#define PVM_ID_AA64AFR0_ALLOW (0ULL)
+#define PVM_ID_AA64AFR1_ALLOW (0ULL)
+
+/*
+ * No restrictions on instructions implemented in AArch64.
+ */
+#define PVM_ID_AA64ISAR0_ALLOW (\
+       ARM64_FEATURE_MASK(ID_AA64ISAR0_AES) | \
+       ARM64_FEATURE_MASK(ID_AA64ISAR0_SHA1) | \
+       ARM64_FEATURE_MASK(ID_AA64ISAR0_SHA2) | \
+       ARM64_FEATURE_MASK(ID_AA64ISAR0_CRC32) | \
+       ARM64_FEATURE_MASK(ID_AA64ISAR0_ATOMICS) | \
+       ARM64_FEATURE_MASK(ID_AA64ISAR0_RDM) | \
+       ARM64_FEATURE_MASK(ID_AA64ISAR0_SHA3) | \
+       ARM64_FEATURE_MASK(ID_AA64ISAR0_SM3) | \
+       ARM64_FEATURE_MASK(ID_AA64ISAR0_SM4) | \
+       ARM64_FEATURE_MASK(ID_AA64ISAR0_DP) | \
+       ARM64_FEATURE_MASK(ID_AA64ISAR0_FHM) | \
+       ARM64_FEATURE_MASK(ID_AA64ISAR0_TS) | \
+       ARM64_FEATURE_MASK(ID_AA64ISAR0_TLB) | \
+       ARM64_FEATURE_MASK(ID_AA64ISAR0_RNDR) \
+       )
+
+#define PVM_ID_AA64ISAR1_ALLOW (\
+       ARM64_FEATURE_MASK(ID_AA64ISAR1_DPB) | \
+       ARM64_FEATURE_MASK(ID_AA64ISAR1_APA) | \
+       ARM64_FEATURE_MASK(ID_AA64ISAR1_API) | \
+       ARM64_FEATURE_MASK(ID_AA64ISAR1_JSCVT) | \
+       ARM64_FEATURE_MASK(ID_AA64ISAR1_FCMA) | \
+       ARM64_FEATURE_MASK(ID_AA64ISAR1_LRCPC) | \
+       ARM64_FEATURE_MASK(ID_AA64ISAR1_GPA) | \
+       ARM64_FEATURE_MASK(ID_AA64ISAR1_GPI) | \
+       ARM64_FEATURE_MASK(ID_AA64ISAR1_FRINTTS) | \
+       ARM64_FEATURE_MASK(ID_AA64ISAR1_SB) | \
+       ARM64_FEATURE_MASK(ID_AA64ISAR1_SPECRES) | \
+       ARM64_FEATURE_MASK(ID_AA64ISAR1_BF16) | \
+       ARM64_FEATURE_MASK(ID_AA64ISAR1_DGH) | \
+       ARM64_FEATURE_MASK(ID_AA64ISAR1_I8MM) \
+       )
+
+u64 pvm_read_id_reg(const struct kvm_vcpu *vcpu, u32 id);
+bool kvm_handle_pvm_sysreg(struct kvm_vcpu *vcpu, u64 *exit_code);
+int kvm_check_pvm_sysreg_table(void);
+void inject_undef64(struct kvm_vcpu *vcpu);
+
+#endif /* __ARM64_KVM_FIXED_CONFIG_H__ */
diff --git a/arch/arm64/kvm/hyp/include/nvhe/sys_regs.h b/arch/arm64/kvm/hyp/include/nvhe/sys_regs.h
deleted file mode 100644 (file)
index 8adc132..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0-only */
-/*
- * Copyright (C) 2021 Google LLC
- * Author: Fuad Tabba <tabba@google.com>
- */
-
-#ifndef __ARM64_KVM_NVHE_SYS_REGS_H__
-#define __ARM64_KVM_NVHE_SYS_REGS_H__
-
-#include <asm/kvm_host.h>
-
-u64 pvm_read_id_reg(const struct kvm_vcpu *vcpu, u32 id);
-bool kvm_handle_pvm_sysreg(struct kvm_vcpu *vcpu, u64 *exit_code);
-int kvm_check_pvm_sysreg_table(void);
-void inject_undef64(struct kvm_vcpu *vcpu);
-
-#endif /* __ARM64_KVM_NVHE_SYS_REGS_H__ */
index 62377fa8a4cbc99461410a1796f35d4a14eeb587..99c8d8b73e70479b74f97e813aca4b21561ef929 100644 (file)
@@ -6,8 +6,7 @@
 
 #include <linux/kvm_host.h>
 #include <linux/mm.h>
-#include <asm/kvm_fixed_config.h>
-#include <nvhe/sys_regs.h>
+#include <nvhe/fixed_config.h>
 #include <nvhe/trap_handler.h>
 
 /*
index c85ff64e63f212f3973da0ca600257523ff40fde..862c7b514e20d903e53ca3ffc73ec3a232d1160d 100644 (file)
 #include <asm/kvm_pgtable.h>
 
 #include <nvhe/early_alloc.h>
+#include <nvhe/fixed_config.h>
 #include <nvhe/gfp.h>
 #include <nvhe/memory.h>
 #include <nvhe/mem_protect.h>
 #include <nvhe/mm.h>
-#include <nvhe/sys_regs.h>
 #include <nvhe/trap_handler.h>
 
 struct hyp_pool hpool;
index 481c365ef144c4117d08a7af867d8217ba40aac8..317dba6a018de12e51a9fe6d830528d6e040e68f 100644 (file)
@@ -20,7 +20,6 @@
 #include <asm/kprobes.h>
 #include <asm/kvm_asm.h>
 #include <asm/kvm_emulate.h>
-#include <asm/kvm_fixed_config.h>
 #include <asm/kvm_hyp.h>
 #include <asm/kvm_mmu.h>
 #include <asm/fpsimd.h>
@@ -28,8 +27,8 @@
 #include <asm/processor.h>
 #include <asm/thread_info.h>
 
+#include <nvhe/fixed_config.h>
 #include <nvhe/mem_protect.h>
-#include <nvhe/sys_regs.h>
 
 /* Non-VHE specific context */
 DEFINE_PER_CPU(struct kvm_host_data, kvm_host_data);
index a341bd8ef252cc0a2a3cf9012038fe9f99836cd7..052f885e65b24a3e62409a4a0a05e50a3b688de2 100644 (file)
@@ -7,12 +7,11 @@
 #include <linux/irqchip/arm-gic-v3.h>
 
 #include <asm/kvm_asm.h>
-#include <asm/kvm_fixed_config.h>
 #include <asm/kvm_mmu.h>
 
 #include <hyp/adjust_pc.h>
 
-#include <nvhe/sys_regs.h>
+#include <nvhe/fixed_config.h>
 
 #include "../../sys_regs.h"