blob: 383dce93aa3ebff544256418f107e62ed5a0b9ca [file] [log] [blame]
/* Copyright (c) 2021 Intel Corporation
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef _ZEPHYR_SOC_INTEL_ADSP_VECTORS
#define _ZEPHYR_SOC_INTEL_ADSP_VECTORS
#include <xtensa/config/core-isa.h>
/* This is the base address of all the vectors defined in SRAM */
#define VECBASE_RESET_PADDR_SRAM \
(L2_SRAM_BASE + CONFIG_HP_SRAM_RESERVE)
#define MEM_VECBASE_LIT_SIZE 0x178
/* The addresses of the vectors in SRAM.
* Only the memerror vector continues to point to its ROM address.
*/
#define INTLEVEL2_VECTOR_PADDR_SRAM \
(VECBASE_RESET_PADDR_SRAM + XCHAL_INTLEVEL2_VECOFS)
#define INTLEVEL3_VECTOR_PADDR_SRAM \
(VECBASE_RESET_PADDR_SRAM + XCHAL_INTLEVEL3_VECOFS)
#define INTLEVEL4_VECTOR_PADDR_SRAM \
(VECBASE_RESET_PADDR_SRAM + XCHAL_INTLEVEL4_VECOFS)
#ifndef SOC_SERIES_INTEL_ACE
#define INTLEVEL5_VECTOR_PADDR_SRAM \
(VECBASE_RESET_PADDR_SRAM + XCHAL_INTLEVEL5_VECOFS)
#define INTLEVEL6_VECTOR_PADDR_SRAM \
(VECBASE_RESET_PADDR_SRAM + XCHAL_INTLEVEL6_VECOFS)
#endif /* SOC_SERIES_INTEL_ACE */
#define INTLEVEL7_VECTOR_PADDR_SRAM \
(VECBASE_RESET_PADDR_SRAM + XCHAL_NMI_VECOFS)
#define KERNEL_VECTOR_PADDR_SRAM \
(VECBASE_RESET_PADDR_SRAM + XCHAL_KERNEL_VECOFS)
#define USER_VECTOR_PADDR_SRAM \
(VECBASE_RESET_PADDR_SRAM + XCHAL_USER_VECOFS)
#define DOUBLEEXC_VECTOR_PADDR_SRAM \
(VECBASE_RESET_PADDR_SRAM + XCHAL_DOUBLEEXC_VECOFS)
#define VECTOR_TBL_SIZE 0x0400
/* Vector and literal sizes */
#define MEM_VECT_LIT_SIZE 0x8
#define MEM_VECT_TEXT_SIZE 0x38
#define MEM_ERROR_TEXT_SIZE 0x180
#define MEM_ERROR_LIT_SIZE 0x8
#endif /* _ZEPHYR_SOC_INTEL_ADSP_VECTORS */