zephyr/soc
Jimmy Zheng f216c434d0 soc: gd32: gd32vf103: keep the mcause.interrupt by SOC-specific context
For Nuclei ECLIC, the interrupt level (mintstatus.MIL) is restored from
the previous interrupt level (mcause.MPIL) only if mcause.interrupt is set.
This behavior is not defined in the RISC-V CLIC spec.
If an ISR causes a context switch and mcause.interrupt is not set in the
next context (e.g. the next context is yielded from ecall), interrupts will
be masked after MRET because the interrupt level is not restored.

Use SOC-specific context to set mcause.interrupt to ensure the interrupt
level is restored correctly.

Signed-off-by: Jimmy Zheng <jimmyzhe@andestech.com>
2025-02-05 17:48:45 +01:00
..
adi/max32 soc: adi: max32: Enable primary core to configure/start secondary core 2025-01-29 17:55:32 +01:00
altr hwmv2: Introduce Hardware model version 2 and convert devices 2024-03-02 16:56:33 -05:00
ambiq soc: ambiq: apollo3x: Flash-controller reconfigured for mcuboot 2024-12-11 21:35:18 +01:00
amd/acp_6_0 soc: amd: acp_6_0: Kconfig: fix SOC_TOOLCHAIN_NAME 2025-01-23 19:22:00 +01:00
andestech arch: riscv: introduce CONFIG_RISCV_GP_PURPOSE choice 2024-11-28 12:51:09 +01:00
antmicro/myra boards: antmicro: add support for the Myra SiP Baseboard 2025-01-20 20:55:37 +01:00
arm soc: arm: mps2: Add support for mps2/an500 soc 2025-01-20 11:15:32 +01:00
aspeed arch: arm: replace PLATFORM_SPECIFIC_INIT with PLATFORM_RESET_HOOK 2024-09-09 10:07:33 +02:00
atmel drivers: watchdog: atmel: Introduce sam4l wdt 2025-01-24 22:08:29 +01:00
brcm soc: Remove re-defining some defined types 2024-11-18 07:41:23 -05:00
cdns soc: add DWARF v5 sections to linker scripts 2024-12-20 12:36:46 +01:00
common soc: riscv_privileged: support soc_reset_hook 2025-01-28 18:16:38 +01:00
efinix/sapphire soc: Remove re-defining some defined types 2024-11-18 07:41:23 -05:00
ene/kb1200 soc: ene: move init code from SYS_INIT to hooks 2024-09-20 13:15:31 +02:00
espressif soc: esp32xx: makes esp_console_init() calling conditional 2025-01-30 16:21:13 +01:00
gaisler soc: Enable SVT on GR716A by default 2024-11-25 21:53:55 +01:00
gd/gd32 soc: gd32: gd32vf103: keep the mcause.interrupt by SOC-specific context 2025-02-05 17:48:45 +01:00
infineon soc: modifications for cyw920829m2evk_02 mpu regions 2025-02-03 19:50:11 +01:00
intel soc: intel_adsp: tools: add cavstool.py fallback for PCI class 2025-01-07 15:58:26 +01:00
ite/ec arch: riscv: introduce CONFIG_RISCV_GP_PURPOSE choice 2024-11-28 12:51:09 +01:00
litex/litex_vexriscv arch: riscv: imply XIP config pushed to SoC level 2024-08-31 06:47:52 -04:00
lowrisc/opentitan soc: lowrisc: opentitan: Fix manifest sizing 2025-01-21 19:30:30 +01:00
mediatek/mt8xxx arch: remove CONFIG_LEGACY_MULTI_LEVEL_TABLE_GENERATION 2025-01-23 16:32:36 +01:00
microchip drivers: adc: microchip: Different channels per package type 2024-12-11 21:35:49 +01:00
native/inf_clock boards native: Add function to remap embedded address 2024-09-26 03:34:26 -04:00
neorv32 arch: riscv: introduce CONFIG_RISCV_GP_PURPOSE choice 2024-11-28 12:51:09 +01:00
nordic soc: nordic: nrf54h: gpd: yield() to not block if main is coop 2025-02-05 12:25:10 +01:00
nuvoton drivers: i2c: npcx: add support to wake up from sleep mode 2025-01-20 07:05:48 +01:00
nxp soc: nxp: Make clock init weak and global 2025-02-05 10:20:41 +01:00
openisa/rv32m1 zephyr: bulk update to DT_NODE_HAS_STATUS_OKAY 2024-10-03 17:06:52 +01:00
qemu arch: riscv: introduce CONFIG_RISCV_GP_PURPOSE choice 2024-11-28 12:51:09 +01:00
quicklogic/eos_s3 soc: quicklogic: move init code from SYS_INIT to hooks 2024-09-20 13:15:31 +02:00
raspberrypi/rpi_pico UF2: Enable support for Raspberry Pi RP2350 2024-12-23 23:57:57 +01:00
realtek/ec driver: gpio: Add gpio driver initial version of RTS5912. 2025-01-10 11:58:02 +01:00
renesas soc: renesas: ra: Add SoC support for Renesas RA4M1 2025-02-03 14:01:59 +01:00
renode arch: riscv: introduce CONFIG_RISCV_GP_PURPOSE choice 2024-11-28 12:51:09 +01:00
rockchip soc: Remove re-defining some defined types 2024-11-18 07:41:23 -05:00
sensry soc: sensry: add pinctrl 2025-01-09 04:04:06 +01:00
sifive/sifive_freedom arch: riscv: introduce CONFIG_RISCV_GP_PURPOSE choice 2024-11-28 12:51:09 +01:00
silabs soc: silabs: Distinguish Gecko SDK from SiSDK HAL 2025-02-04 09:19:53 +01:00
snps arch: riscv: introduce CONFIG_RISCV_GP_PURPOSE choice 2024-11-28 12:51:09 +01:00
st/stm32 soc: stm32n6: Generate a warning when signing tool is not available 2025-02-03 19:56:49 +01:00
starfive/jh71xx arch: riscv: introduce CONFIG_RISCV_GP_PURPOSE choice 2024-11-28 12:51:09 +01:00
telink/tlsr soc: telink: tlsr: tlsr951x: remove PINCTRL defconfig 2024-12-05 15:17:47 +01:00
ti drivers: pinctrl: Add support for cc23x0 pinctrl 2025-02-04 11:56:05 +01:00
wch/ch32v soc: wch: add generic vector table support 2025-01-15 11:58:58 +01:00
xen soc: Remove re-defining some defined types 2024-11-18 07:41:23 -05:00
xlnx soc: xlnx: zynq7000: remove PS GPIO controller's static memory mapping 2024-12-19 19:56:23 +01:00
CMakeLists.txt soc: add deprecation warning if using HWMv1 SoCs 2024-06-12 17:16:40 -05:00
Kconfig Kconfig: Link to deprecation instructions 2024-08-15 12:40:16 +02:00
Kconfig.v1 scripts: remove boards_legacy sub-folder from list_boards.py 2024-03-22 11:51:58 +01:00
Kconfig.v1.choice cmake: remove dead 'soc_legacy' folder handling 2024-06-12 17:15:28 -05:00
Kconfig.v2 hwmv2: Introduce Hardware model version 2 and convert devices 2024-03-02 16:56:33 -05:00