Skip to content

Commit 117c495

Browse files
committed
tools kvm headers arm64: Update KVM headers from the kernel sources
To pick the changes from: 2cde51f ("KVM: arm64: Hide KVM_REG_ARM_*_BMAP_BIT_COUNT from userspace") b22216e ("KVM: arm64: Add vendor hypervisor firmware register") 428fd67 ("KVM: arm64: Add standard hypervisor firmware register") 05714ca ("KVM: arm64: Setup a framework for hypercall bitmap firmware registers") 18f3976 ("KVM: arm64: uapi: Add kvm_debug_exit_arch.hsr_high") a5905d6 ("KVM: arm64: Allow SMCCC_ARCH_WORKAROUND_3 to be discovered and migrated") That don't causes any changes in tooling (when built on x86), only addresses this perf build warning: Warning: Kernel ABI header at 'tools/arch/arm64/include/uapi/asm/kvm.h' differs from latest version at 'arch/arm64/include/uapi/asm/kvm.h' diff -u tools/arch/arm64/include/uapi/asm/kvm.h arch/arm64/include/uapi/asm/kvm.h Cc: Adrian Hunter <[email protected]> Cc: Alexandru Elisei <[email protected]> Cc: Catalin Marinas <[email protected]> Cc: Ian Rogers <[email protected]> Cc: James Morse <[email protected]> Cc: Jiri Olsa <[email protected]> Cc: Marc Zyngier <[email protected]> Cc: Namhyung Kim <[email protected]> Cc: Raghavendra Rao Ananta <[email protected]> Link: https://lore.kernel.org/lkml/[email protected] Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
1 parent 49c692b commit 117c495

File tree

1 file changed

+36
-0
lines changed
  • tools/arch/arm64/include/uapi/asm

1 file changed

+36
-0
lines changed

tools/arch/arm64/include/uapi/asm/kvm.h

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -139,8 +139,10 @@ struct kvm_guest_debug_arch {
139139
__u64 dbg_wvr[KVM_ARM_MAX_DBG_REGS];
140140
};
141141

142+
#define KVM_DEBUG_ARCH_HSR_HIGH_VALID (1 << 0)
142143
struct kvm_debug_exit_arch {
143144
__u32 hsr;
145+
__u32 hsr_high; /* ESR_EL2[61:32] */
144146
__u64 far; /* used for watchpoints */
145147
};
146148

@@ -332,6 +334,40 @@ struct kvm_arm_copy_mte_tags {
332334
#define KVM_ARM64_SVE_VLS_WORDS \
333335
((KVM_ARM64_SVE_VQ_MAX - KVM_ARM64_SVE_VQ_MIN) / 64 + 1)
334336

337+
/* Bitmap feature firmware registers */
338+
#define KVM_REG_ARM_FW_FEAT_BMAP (0x0016 << KVM_REG_ARM_COPROC_SHIFT)
339+
#define KVM_REG_ARM_FW_FEAT_BMAP_REG(r) (KVM_REG_ARM64 | KVM_REG_SIZE_U64 | \
340+
KVM_REG_ARM_FW_FEAT_BMAP | \
341+
((r) & 0xffff))
342+
343+
#define KVM_REG_ARM_STD_BMAP KVM_REG_ARM_FW_FEAT_BMAP_REG(0)
344+
345+
enum {
346+
KVM_REG_ARM_STD_BIT_TRNG_V1_0 = 0,
347+
#ifdef __KERNEL__
348+
KVM_REG_ARM_STD_BMAP_BIT_COUNT,
349+
#endif
350+
};
351+
352+
#define KVM_REG_ARM_STD_HYP_BMAP KVM_REG_ARM_FW_FEAT_BMAP_REG(1)
353+
354+
enum {
355+
KVM_REG_ARM_STD_HYP_BIT_PV_TIME = 0,
356+
#ifdef __KERNEL__
357+
KVM_REG_ARM_STD_HYP_BMAP_BIT_COUNT,
358+
#endif
359+
};
360+
361+
#define KVM_REG_ARM_VENDOR_HYP_BMAP KVM_REG_ARM_FW_FEAT_BMAP_REG(2)
362+
363+
enum {
364+
KVM_REG_ARM_VENDOR_HYP_BIT_FUNC_FEAT = 0,
365+
KVM_REG_ARM_VENDOR_HYP_BIT_PTP = 1,
366+
#ifdef __KERNEL__
367+
KVM_REG_ARM_VENDOR_HYP_BMAP_BIT_COUNT,
368+
#endif
369+
};
370+
335371
/* Device Control API: ARM VGIC */
336372
#define KVM_DEV_ARM_VGIC_GRP_ADDR 0
337373
#define KVM_DEV_ARM_VGIC_GRP_DIST_REGS 1

0 commit comments

Comments
 (0)