git: fe5ed2496e44 - main - arm64: Don't trap SVE to EL2

From: Andrew Turner <andrew_at_FreeBSD.org>
Date: Mon, 30 Sep 2024 12:23:40 UTC
The branch main has been updated by andrew:

URL: https://cgit.FreeBSD.org/src/commit/?id=fe5ed2496e44aec018a6215175bba225b20d81fd

commit fe5ed2496e44aec018a6215175bba225b20d81fd
Author:     Andrew Turner <andrew@FreeBSD.org>
AuthorDate: 2024-09-27 13:41:08 +0000
Commit:     Andrew Turner <andrew@FreeBSD.org>
CommitDate: 2024-09-30 12:04:23 +0000

    arm64: Don't trap SVE to EL2
    
    As with floating point instructions don't trap SVE instructions to the
    hypervisor. This lets us handle then in the kernel.
    
    Reviewed by:    imp (earlier version)
    Sponsored by:   Arm Ltd
    Differential Revision:  https://reviews.freebsd.org/D43303
---
 sys/arm64/include/hypervisor.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/sys/arm64/include/hypervisor.h b/sys/arm64/include/hypervisor.h
index 0a138006b108..1ba1756ecdf2 100644
--- a/sys/arm64/include/hypervisor.h
+++ b/sys/arm64/include/hypervisor.h
@@ -55,11 +55,12 @@
 /* Valid if HCR_EL2.E2H == 0 */
 #define	CPTR_TRAP_ALL		0xc01037ff /* Enable all traps */
 #define	CPTR_RES0		0x7fefc800
-#define	CPTR_RES1		0x000033ff
+#define	CPTR_RES1		0x000032ff
 #define	CPTR_TFP		0x00000400
 #define	CPTR_TTA		0x00100000
 /* Valid if HCR_EL2.E2H == 1 */
 #define	CPTR_E2H_TRAP_ALL	0xd0000000
+#define	CPTR_E2H_ZPEN		0x00030000
 #define	CPTR_E2H_FPEN		0x00300000
 #define	CPTR_E2H_TTA		0x10000000
 /* Unconditionally valid */