summaryrefslogtreecommitdiff
path: root/include/hyperv
diff options
context:
space:
mode:
authorAnirudh Rayabharam (Microsoft) <anirudh@anirudhrb.com>2026-02-25 12:44:03 +0000
committerWei Liu <wei.liu@kernel.org>2026-02-25 19:09:49 +0000
commit622d68772ddf07573cf88e833afe8ba6c70ac748 (patch)
tree33b639709e08f701bafea210ea7614cd8b5c9b39 /include/hyperv
parent5a674ef871fe9d4c7477127340941f2c4d9a2741 (diff)
mshv: add arm64 support for doorbell & intercept SINTs
On x86, the HYPERVISOR_CALLBACK_VECTOR is used to receive synthetic interrupts (SINTs) from the hypervisor for doorbells and intercepts. There is no such vector reserved for arm64. On arm64, the hypervisor exposes a synthetic register that can be read to find the INTID that should be used for SINTs. This INTID is in the PPI range. To better unify the code paths, introduce mshv_sint_vector_init() that either reads the synthetic register and obtains the INTID (arm64) or just uses HYPERVISOR_CALLBACK_VECTOR as the interrupt vector (x86). Reviewed-by: Michael Kelley <mhklinux@outlook.com> Reviewed-by: Stanislav Kinsburskii <skinsburskii@linux.microsoft.com> Signed-off-by: Anirudh Rayabharam (Microsoft) <anirudh@anirudhrb.com> Signed-off-by: Wei Liu <wei.liu@kernel.org>
Diffstat (limited to 'include/hyperv')
-rw-r--r--include/hyperv/hvgdk_mini.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/hyperv/hvgdk_mini.h b/include/hyperv/hvgdk_mini.h
index 056ef7b6b360..8bb3dd71c5b4 100644
--- a/include/hyperv/hvgdk_mini.h
+++ b/include/hyperv/hvgdk_mini.h
@@ -1121,6 +1121,8 @@ enum hv_register_name {
HV_X64_REGISTER_MSR_MTRR_FIX4KF8000 = 0x0008007A,
HV_X64_REGISTER_REG_PAGE = 0x0009001C,
+#elif defined(CONFIG_ARM64)
+ HV_ARM64_REGISTER_SINT_RESERVED_INTERRUPT_ID = 0x00070001,
#endif
};