xref: /rk3399_ARM-atf/include/lib/extensions/sve.h (revision b62673c645752a78f649282cfa293e8da09e3bef)
1 /*
2  * Copyright (c) 2017-2024, Arm Limited and Contributors. All rights reserved.
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  */
6 
7 #ifndef SVE_H
8 #define SVE_H
9 
10 #include <context.h>
11 
12 #if (ENABLE_SME_FOR_NS || ENABLE_SVE_FOR_NS)
13 
14 void sve_init_el2_unused(void);
15 void sve_enable_per_world(per_world_context_t *per_world_ctx);
16 void sve_disable_per_world(per_world_context_t *per_world_ctx);
17 #else
18 static inline void sve_init_el2_unused(void)
19 {
20 }
21 static inline void sve_enable_per_world(per_world_context_t *per_world_ctx)
22 {
23 }
24 static inline void sve_disable_per_world(per_world_context_t *per_world_ctx)
25 {
26 }
27 #endif /* ( ENABLE_SME_FOR_NS | ENABLE_SVE_FOR_NS ) */
28 
29 #if CTX_INCLUDE_SVE_REGS
30 void sve_context_save(simd_regs_t *regs);
31 void sve_context_restore(simd_regs_t *regs);
32 #endif
33 
34 #endif /* SVE_H */
35