zephyr/include/arch
Øyvind Rønningstad a2cfb8431d arch: arm: Add code for swapping threads between secure and non-secure
This adds code to swap_helper.S which does special handling of LR when
the interrupt came from secure. The LR value is stored to memory, and
put back into LR when swapping back to the relevant thread.

Also, add special handling of FP state when switching from secure to
non-secure, since we don't know whether the original non-secure thread
(which called a secure service) was using FP registers, so we always
store them, just in case.

Signed-off-by: Øyvind Rønningstad <oyvind.ronningstad@nordicsemi.no>
2021-05-05 13:00:31 +02:00
..
arc kernel: generate placeholders for kobj tables before final build 2021-04-27 13:32:00 -04:00
arm/aarch32 arch: arm: Add code for swapping threads between secure and non-secure 2021-05-05 13:00:31 +02:00
arm64 arm64: FPU context switching support 2021-05-03 11:56:50 +02:00
common ARCH: COMMON: split sys_io.h for MMIO & memory bits functions 2020-09-01 13:36:48 +02:00
nios2 nios2: add _image_rodata_start/end to linker script 2021-04-28 22:25:42 +02:00
posix clock: rename z_timer_cycle_get_32 -> sys_clock_cycle_get_32 2021-03-19 11:22:17 -04:00
riscv kernel: generate placeholders for kobj tables before final build 2021-04-27 13:32:00 -04:00
sparc sparc: add _image_rodata_start/end to linker script 2021-04-28 22:25:42 +02:00
x86 kernel: generate placeholders for kobj tables before final build 2021-04-27 13:32:00 -04:00
xtensa clock: rename z_timer_cycle_get_32 -> sys_clock_cycle_get_32 2021-03-19 11:22:17 -04:00
arch_inlines.h arm/arm64: Make ARM64 a standalone architecture 2021-03-31 10:34:33 -05:00
cpu.h arm/arm64: Make ARM64 a standalone architecture 2021-03-31 10:34:33 -05:00
structs.h kernel: add an architecture specific structs header 2021-04-21 09:03:47 -04:00
syscall.h arm/arm64: Make ARM64 a standalone architecture 2021-03-31 10:34:33 -05:00