zephyr/arch/xtensa/include
Andy Ross e694656345 kernel: Move per-cpu _kernel_t fields into separate struct
When in SMP mode, the nested/irq_stack/current fields are specific to
the current CPU and not to the kernel as a whole, so we need an array
of these.  Place them in a _cpu_t struct and implement a
_arch_curr_cpu() function to retrieve the pointer.

When not in SMP mode, the first CPU's fields are defined as a unioned
with the first _cpu_t record.  This permits compatibility with legacy
assembly on other platforms.  Long term, all users, including
uniprocessor architectures, should be updated to use the new scheme.

Fundamentally this is just renaming: the structure layout and runtime
code do not change on any existing platforms and won't until someone
defines a second CPU.

Signed-off-by: Andy Ross <andrew.j.ross@intel.com>
2018-02-16 10:44:29 -05:00
..
kernel_arch_data.h kernel: Add alternative _arch_switch context switch primitive 2018-02-16 10:44:29 -05:00
kernel_arch_func.h kernel: Move per-cpu _kernel_t fields into separate struct 2018-02-16 10:44:29 -05:00
kernel_arch_thread.h doc: Fix misspellings in header/doxygen comments 2017-10-17 19:40:29 -04:00
kernel_event_logger_arch.h
offsets_short_arch.h
xtensa-asm2-context.h xtensa: New asm layer to support SMP 2018-02-16 10:44:29 -05:00
xtensa-asm2-s.h xtensa-asm2: Handle alloca/movsp exceptions 2018-02-16 10:44:29 -05:00
xtensa-asm2.h xtensa: New asm layer to support SMP 2018-02-16 10:44:29 -05:00
xtensa_api.h xtensa: Implement _xt_ints_on/off for asm2 2018-02-16 10:44:29 -05:00
xtensa_config.h cleanup: rename fiber/task -> thread 2017-10-30 18:41:15 -04:00
xtensa_context.h
xtensa_rtos.h timer: xtensa_sys_timer: Tickless Kernel Implementation for Xtensa 2017-11-07 08:17:40 -05:00
xtensa_timer.h timer: xtensa_sys_timer: Tickless Kernel Implementation for Xtensa 2017-11-07 08:17:40 -05:00