1*91f16700Schasinglulu /* 2*91f16700Schasinglulu * Copyright (c) 2017-2023, Arm Limited and Contributors. All rights reserved. 3*91f16700Schasinglulu * 4*91f16700Schasinglulu * SPDX-License-Identifier: BSD-3-Clause 5*91f16700Schasinglulu */ 6*91f16700Schasinglulu 7*91f16700Schasinglulu #ifndef SVE_H 8*91f16700Schasinglulu #define SVE_H 9*91f16700Schasinglulu 10*91f16700Schasinglulu #include <context.h> 11*91f16700Schasinglulu 12*91f16700Schasinglulu #if (ENABLE_SME_FOR_NS || ENABLE_SVE_FOR_NS) 13*91f16700Schasinglulu void sve_init_el2_unused(void); 14*91f16700Schasinglulu void sve_enable_per_world(per_world_context_t *per_world_ctx); 15*91f16700Schasinglulu void sve_disable_per_world(per_world_context_t *per_world_ctx); 16*91f16700Schasinglulu #else 17*91f16700Schasinglulu static inline void sve_init_el2_unused(void) 18*91f16700Schasinglulu { 19*91f16700Schasinglulu } 20*91f16700Schasinglulu static inline void sve_enable_per_world(per_world_context_t *per_world_ctx) 21*91f16700Schasinglulu { 22*91f16700Schasinglulu } 23*91f16700Schasinglulu static inline void sve_disable_per_world(per_world_context_t *per_world_ctx) 24*91f16700Schasinglulu { 25*91f16700Schasinglulu } 26*91f16700Schasinglulu #endif /* ( ENABLE_SME_FOR_NS | ENABLE_SVE_FOR_NS ) */ 27*91f16700Schasinglulu 28*91f16700Schasinglulu #endif /* SVE_H */ 29