11a853370SDavid Cunado /* 22b0bc4e0SJayanth Dodderi Chidanand * Copyright (c) 2017-2023, Arm Limited and Contributors. All rights reserved. 31a853370SDavid Cunado * 41a853370SDavid Cunado * SPDX-License-Identifier: BSD-3-Clause 51a853370SDavid Cunado */ 61a853370SDavid Cunado 740daecc1SAntonio Nino Diaz #ifndef SVE_H 840daecc1SAntonio Nino Diaz #define SVE_H 91a853370SDavid Cunado 100c5e7d1cSMax Shvetsov #include <context.h> 111a853370SDavid Cunado 122b0bc4e0SJayanth Dodderi Chidanand #if (ENABLE_SME_FOR_NS || ENABLE_SVE_FOR_NS) 1360d330dcSBoyan Karatotev void sve_init_el2_unused(void); 14*461c0a5dSElizabeth Ho void sve_enable_per_world(per_world_context_t *per_world_ctx); 15*461c0a5dSElizabeth Ho void sve_disable_per_world(per_world_context_t *per_world_ctx); 162b0bc4e0SJayanth Dodderi Chidanand #else 1760d330dcSBoyan Karatotev static inline void sve_init_el2_unused(void) 1860d330dcSBoyan Karatotev { 1960d330dcSBoyan Karatotev } 20*461c0a5dSElizabeth Ho static inline void sve_enable_per_world(per_world_context_t *per_world_ctx) 21*461c0a5dSElizabeth Ho { 22*461c0a5dSElizabeth Ho } 23*461c0a5dSElizabeth Ho static inline void sve_disable_per_world(per_world_context_t *per_world_ctx) 242b0bc4e0SJayanth Dodderi Chidanand { 252b0bc4e0SJayanth Dodderi Chidanand } 262b0bc4e0SJayanth Dodderi Chidanand #endif /* ( ENABLE_SME_FOR_NS | ENABLE_SVE_FOR_NS ) */ 2740daecc1SAntonio Nino Diaz 2840daecc1SAntonio Nino Diaz #endif /* SVE_H */ 29