1 /*
2  * Copyright (c) 2014 Wind River Systems, Inc.
3  *
4  * SPDX-License-Identifier: Apache-2.0
5  */
6 
7 /**
8  * @file
9  * @brief ARCv2 public exception handling
10  *
11  * ARC-specific kernel exception handling interface. Included by arc/arch.h.
12  */
13 
14 #ifndef ZEPHYR_INCLUDE_ARCH_ARC_V2_EXC_H_
15 #define ZEPHYR_INCLUDE_ARCH_ARC_V2_EXC_H_
16 
17 #ifdef __cplusplus
18 extern "C" {
19 #endif
20 
21 #ifdef _ASMLANGUAGE
22 #else
23 typedef struct  _irq_stack_frame z_arch_esf_t;
24 #endif
25 
26 #ifdef __cplusplus
27 }
28 #endif
29 
30 /* ARCv2 Exception vector numbers */
31 #define ARC_EV_RESET			0x0
32 #define ARC_EV_MEM_ERROR		0x1
33 #define ARC_EV_INS_ERROR		0x2
34 #define ARC_EV_MACHINE_CHECK		0x3
35 #define ARC_EV_TLB_MISS_I		0x4
36 #define ARC_EV_TLB_MISS_D		0x5
37 #define ARC_EV_PROT_V			0x6
38 #define ARC_EV_PRIVILEGE_V		0x7
39 #define ARC_EV_SWI			0x8
40 #define ARC_EV_TRAP			0x9
41 #define ARC_EV_EXTENSION		0xA
42 #define ARC_EV_DIV_ZERO			0xB
43 #define ARC_EV_DC_ERROR			0xC
44 #define ARC_EV_MISALIGNED		0xD
45 #define ARC_EV_VEC_UNIT			0xE
46 
47 #endif /* ZEPHYR_INCLUDE_ARCH_ARC_V2_EXC_H_ */
48