xref: /aosp_15_r20/external/arm-trusted-firmware/plat/common/aarch64/plat_ehf.c (revision 54fd6939e177f8ff529b10183254802c76df6d08)
1*54fd6939SJiyong Park /*
2*54fd6939SJiyong Park  * Copyright (c) 2017-2020, ARM Limited and Contributors. All rights reserved.
3*54fd6939SJiyong Park  * Copyright (c) 2020, Broadcom
4*54fd6939SJiyong Park  * SPDX-License-Identifier: BSD-3-Clause
5*54fd6939SJiyong Park  */
6*54fd6939SJiyong Park 
7*54fd6939SJiyong Park #include <bl31/ehf.h>
8*54fd6939SJiyong Park 
9*54fd6939SJiyong Park #include <platform_def.h>
10*54fd6939SJiyong Park 
11*54fd6939SJiyong Park /*
12*54fd6939SJiyong Park  * Enumeration of priority levels on ARM platforms.
13*54fd6939SJiyong Park  */
14*54fd6939SJiyong Park ehf_pri_desc_t plat_exceptions[] = {
15*54fd6939SJiyong Park #if RAS_EXTENSION
16*54fd6939SJiyong Park 	/* RAS Priority */
17*54fd6939SJiyong Park 	EHF_PRI_DESC(PLAT_PRI_BITS, PLAT_RAS_PRI),
18*54fd6939SJiyong Park #endif
19*54fd6939SJiyong Park 
20*54fd6939SJiyong Park #if SDEI_SUPPORT
21*54fd6939SJiyong Park 	/* Critical priority SDEI */
22*54fd6939SJiyong Park 	EHF_PRI_DESC(PLAT_PRI_BITS, PLAT_SDEI_CRITICAL_PRI),
23*54fd6939SJiyong Park 
24*54fd6939SJiyong Park 	/* Normal priority SDEI */
25*54fd6939SJiyong Park 	EHF_PRI_DESC(PLAT_PRI_BITS, PLAT_SDEI_NORMAL_PRI),
26*54fd6939SJiyong Park #endif
27*54fd6939SJiyong Park #if SPM_MM
28*54fd6939SJiyong Park 	EHF_PRI_DESC(PLAT_PRI_BITS, PLAT_SP_PRI),
29*54fd6939SJiyong Park #endif
30*54fd6939SJiyong Park 	/* Plaform specific exceptions description */
31*54fd6939SJiyong Park #ifdef PLAT_EHF_DESC
32*54fd6939SJiyong Park 	PLAT_EHF_DESC,
33*54fd6939SJiyong Park #endif
34*54fd6939SJiyong Park };
35*54fd6939SJiyong Park 
36*54fd6939SJiyong Park /* Plug in ARM exceptions to Exception Handling Framework. */
37*54fd6939SJiyong Park EHF_REGISTER_PRIORITIES(plat_exceptions, ARRAY_SIZE(plat_exceptions), PLAT_PRI_BITS);
38