1 /* Copyright (c) 2021 Intel Corporation 2 * SPDX-License-Identifier: Apache-2.0 3 */ 4 #ifndef _ZEPHYR_SOC_INTEL_ADSP_VECTORS 5 #define _ZEPHYR_SOC_INTEL_ADSP_VECTORS 6 7 #include <xtensa/config/core-isa.h> 8 9 /* This is the base address of all the vectors defined in SRAM */ 10 #define VECBASE_RESET_PADDR_SRAM \ 11 (L2_SRAM_BASE + CONFIG_HP_SRAM_RESERVE) 12 13 #define MEM_VECBASE_LIT_SIZE 0x178 14 15 /* The addresses of the vectors in SRAM. 16 * Only the memerror vector continues to point to its ROM address. 17 */ 18 #define INTLEVEL2_VECTOR_PADDR_SRAM \ 19 (VECBASE_RESET_PADDR_SRAM + XCHAL_INTLEVEL2_VECOFS) 20 21 #define INTLEVEL3_VECTOR_PADDR_SRAM \ 22 (VECBASE_RESET_PADDR_SRAM + XCHAL_INTLEVEL3_VECOFS) 23 24 #define INTLEVEL4_VECTOR_PADDR_SRAM \ 25 (VECBASE_RESET_PADDR_SRAM + XCHAL_INTLEVEL4_VECOFS) 26 27 #ifndef SOC_SERIES_INTEL_ADSP_ACE 28 #define INTLEVEL5_VECTOR_PADDR_SRAM \ 29 (VECBASE_RESET_PADDR_SRAM + XCHAL_INTLEVEL5_VECOFS) 30 31 #define INTLEVEL6_VECTOR_PADDR_SRAM \ 32 (VECBASE_RESET_PADDR_SRAM + XCHAL_INTLEVEL6_VECOFS) 33 #endif /* SOC_SERIES_INTEL_ADSP_ACE */ 34 35 36 #define INTLEVEL7_VECTOR_PADDR_SRAM \ 37 (VECBASE_RESET_PADDR_SRAM + XCHAL_NMI_VECOFS) 38 39 #define KERNEL_VECTOR_PADDR_SRAM \ 40 (VECBASE_RESET_PADDR_SRAM + XCHAL_KERNEL_VECOFS) 41 42 #define USER_VECTOR_PADDR_SRAM \ 43 (VECBASE_RESET_PADDR_SRAM + XCHAL_USER_VECOFS) 44 45 #define DOUBLEEXC_VECTOR_PADDR_SRAM \ 46 (VECBASE_RESET_PADDR_SRAM + XCHAL_DOUBLEEXC_VECOFS) 47 48 #define VECTOR_TBL_SIZE 0x1000 49 50 /* Vector and literal sizes */ 51 #define MEM_VECT_LIT_SIZE 0x8 52 #define MEM_VECT_TEXT_SIZE 0x38 53 54 #define MEM_ERROR_TEXT_SIZE 0x180 55 #define MEM_ERROR_LIT_SIZE 0x8 56 57 #endif /* _ZEPHYR_SOC_INTEL_ADSP_VECTORS */ 58