/* * Copyright (c) 2016 Wind River Systems, Inc. * * SPDX-License-Identifier: Apache-2.0 */ #ifndef ZEPHYR_KERNEL_INCLUDE_OFFSETS_SHORT_H_ #define ZEPHYR_KERNEL_INCLUDE_OFFSETS_SHORT_H_ #include #include /* kernel */ /* main */ #ifndef CONFIG_SMP /* Relies on _kernel.cpu being the first member of _kernel and having 1 element */ #define _kernel_offset_to_nested \ (___cpu_t_nested_OFFSET) #define _kernel_offset_to_irq_stack \ (___cpu_t_irq_stack_OFFSET) #define _kernel_offset_to_current \ (___cpu_t_current_OFFSET) #if defined(CONFIG_FPU_SHARING) #define _kernel_offset_to_fp_ctx \ (___cpu_t_fp_ctx_OFFSET) #endif /* CONFIG_FPU_SHARING */ #endif /* CONFIG_SMP */ #define _kernel_offset_to_idle \ (___kernel_t_idle_OFFSET) #define _kernel_offset_to_current_fp \ (___kernel_t_current_fp_OFFSET) #define _kernel_offset_to_ready_q_cache \ (___kernel_t_ready_q_OFFSET + ___ready_q_t_cache_OFFSET) /* end - kernel */ /* threads */ /* main */ #define _thread_offset_to_callee_saved \ (___thread_t_callee_saved_OFFSET) #ifdef CONFIG_THREAD_LOCAL_STORAGE #define _thread_offset_to_tls \ (___thread_t_tls_OFFSET) #endif /* CONFIG_THREAD_LOCAL_STORAGE */ /* base */ #define _thread_offset_to_thread_state \ (___thread_t_base_OFFSET + ___thread_base_t_thread_state_OFFSET) #define _thread_offset_to_user_options \ (___thread_t_base_OFFSET + ___thread_base_t_user_options_OFFSET) #define _thread_offset_to_prio \ (___thread_t_base_OFFSET + ___thread_base_t_prio_OFFSET) #define _thread_offset_to_sched_locked \ (___thread_t_base_OFFSET + ___thread_base_t_sched_locked_OFFSET) #define _thread_offset_to_preempt \ (___thread_t_base_OFFSET + ___thread_base_t_preempt_OFFSET) #define _thread_offset_to_esf \ (___thread_t_arch_OFFSET + ___thread_arch_t_esf_OFFSET) #define _thread_offset_to_stack_start \ (___thread_t_stack_info_OFFSET + ___thread_stack_info_t_start_OFFSET) /* end - threads */ #endif /* ZEPHYR_KERNEL_INCLUDE_OFFSETS_SHORT_H_ */