zephyr/arch/riscv/core
Carlo Caione 7a11d883cc riscv: Introduce RISCV_ALWAYS_SWITCH_THROUGH_ECALL
Some early RISC-V SoCs have a problem when an `mret` instruction is used
outside a trap handler.

After the latest Zephyr RISC-V huge rework, the arch_switch code is
indeed calling `mret` when not in handler mode, breaking some early
RISC-V platforms.

Optionally restore the old behavior by adding a new
CONFIG_RISCV_ALWAYS_SWITCH_THROUGH_ECALL symbol.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
Signed-off-by: Carlo Caione <ccaione@baylibre.com>
2022-07-04 18:18:10 +02:00
..
offsets riscv: stop preserving the tp register needlessly 2022-06-23 13:12:05 -04:00
CMakeLists.txt riscv: pmp: switch over to the new implementation 2022-04-29 15:30:00 +02:00
asm_macros.inc riscv: abstract RV32E register access 2022-06-23 13:12:05 -04:00
coredump.c riscv: Introduce support for RV32E 2022-06-08 18:50:22 +09:00
cpu_idle.c arch: migrate includes to <zephyr/...> 2022-05-06 19:57:22 +02:00
fatal.c riscv: stop preserving the tp register needlessly 2022-06-23 13:12:05 -04:00
irq_manage.c arch: migrate includes to <zephyr/...> 2022-05-06 19:57:22 +02:00
irq_offload.c arch: migrate includes to <zephyr/...> 2022-05-06 19:57:22 +02:00
isr.S riscv: Introduce RISCV_ALWAYS_SWITCH_THROUGH_ECALL 2022-07-04 18:18:10 +02:00
pmp.S asm: update files with <zephyr/...> include prefix 2022-05-09 12:45:29 -04:00
pmp.c riscv: pmp: properly initialize per-thread m-mode/u-mode entry array 2022-06-23 15:56:00 -05:00
prep_c.c arch: migrate includes to <zephyr/...> 2022-05-06 19:57:22 +02:00
reboot.c arch: migrate includes to <zephyr/...> 2022-05-06 19:57:22 +02:00
reset.S asm: update files with <zephyr/...> include prefix 2022-05-09 12:45:29 -04:00
semihost.c semihosting: fix inline assembly output dependency 2022-04-24 19:46:15 +02:00
smp.c riscv: new TLS-based arch_is_user_context() implementation 2022-06-23 13:12:05 -04:00
switch.S riscv: stop preserving the tp register needlessly 2022-06-23 13:12:05 -04:00
thread.c riscv: new TLS-based arch_is_user_context() implementation 2022-06-23 13:12:05 -04:00
tls.c arch: migrate includes to <zephyr/...> 2022-05-06 19:57:22 +02:00
userspace.S asm: update files with <zephyr/...> include prefix 2022-05-09 12:45:29 -04:00