1 /* 2 * Copyright (c) 2014 Wind River Systems, Inc. 3 * Copyright (c) 2016 Cadence Design Systems, Inc. 4 * SPDX-License-Identifier: Apache-2.0 5 */ 6 7 /** 8 * @file 9 * @brief Xtensa public exception handling 10 * 11 * Xtensa-specific kernel exception handling interface. Included by 12 * arch/xtensa/arch.h. 13 */ 14 15 #ifndef ZEPHYR_INCLUDE_ARCH_XTENSA_EXC_H_ 16 #define ZEPHYR_INCLUDE_ARCH_XTENSA_EXC_H_ 17 18 #ifdef __cplusplus 19 extern "C" { 20 #endif 21 22 #ifndef _ASMLANGUAGE 23 24 /* Xtensa uses a variable length stack frame depending on how many 25 * register windows are in use. This isn't a struct type, it just 26 * matches the register/stack-unit width. 27 */ 28 typedef int z_arch_esf_t; 29 30 void z_xtensa_dump_stack(const z_arch_esf_t *stack); 31 char *z_xtensa_exccause(unsigned int cause_code); 32 33 #endif 34 35 #ifdef __cplusplus 36 } 37 #endif 38 39 40 #endif /* ZEPHYR_INCLUDE_ARCH_XTENSA_EXC_H_ */ 41