1 /* 2 * Copyright (c) 2021 Intel Corporation 3 * SPDX-License-Identifier: Apache-2.0 4 */ 5 6 #include <gen_offset.h> 7 #include <kernel_offsets.h> 8 #include <zephyr/arch/xtensa/thread.h> 9 10 #include <xtensa_asm2_context.h> 11 12 GEN_ABSOLUTE_SYM(___xtensa_irq_bsa_t_SIZEOF, sizeof(_xtensa_irq_bsa_t)); 13 GEN_ABSOLUTE_SYM(___xtensa_irq_stack_frame_raw_t_SIZEOF, sizeof(_xtensa_irq_stack_frame_raw_t)); 14 GEN_ABSOLUTE_SYM(___xtensa_irq_stack_frame_a15_t_SIZEOF, sizeof(_xtensa_irq_stack_frame_a15_t)); 15 GEN_ABSOLUTE_SYM(___xtensa_irq_stack_frame_a11_t_SIZEOF, sizeof(_xtensa_irq_stack_frame_a11_t)); 16 GEN_ABSOLUTE_SYM(___xtensa_irq_stack_frame_a7_t_SIZEOF, sizeof(_xtensa_irq_stack_frame_a7_t)); 17 GEN_ABSOLUTE_SYM(___xtensa_irq_stack_frame_a3_t_SIZEOF, sizeof(_xtensa_irq_stack_frame_a3_t)); 18 19 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, a0); 20 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, scratch); 21 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, a2); 22 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, a3); 23 24 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, exccause); 25 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, pc); 26 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, ps); 27 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, sar); 28 29 #if XCHAL_HAVE_LOOPS 30 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, lcount); 31 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, lbeg); 32 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, lend); 33 #endif 34 35 #if XCHAL_HAVE_S32C1I 36 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, scompare1); 37 #endif 38 39 #if XCHAL_HAVE_THREADPTR 40 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, threadptr); 41 #endif 42 43 #if XCHAL_HAVE_FP && defined(CONFIG_CPU_HAS_FPU) && defined(CONFIG_FPU_SHARING) 44 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, fcr); 45 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, fsr); 46 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, fpu0); 47 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, fpu1); 48 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, fpu2); 49 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, fpu3); 50 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, fpu4); 51 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, fpu5); 52 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, fpu6); 53 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, fpu7); 54 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, fpu8); 55 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, fpu9); 56 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, fpu10); 57 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, fpu11); 58 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, fpu12); 59 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, fpu13); 60 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, fpu14); 61 GEN_OFFSET_SYM(_xtensa_irq_bsa_t, fpu15); 62 #endif 63 64 #ifdef CONFIG_USERSPACE 65 GEN_OFFSET_SYM(_thread_arch_t, psp); 66 GEN_OFFSET_SYM(_thread_arch_t, ptables); 67 #endif 68 69 70 GEN_ABS_SYM_END 71