zephyr/include/arch
Andy Ross 17e9d623b4 kernel: Enable interrupts for MULTITHREADING=n on supported arch's
Some applications have a use case for a tiny MULTITHREADING=n build
(which lacks most of the kernel) but still want special-purpose
drivers in that mode that might need to handle interupts.  This
creates a chicken and egg problem, as arch code (for obvious reasons)
runs _Cstart() with interrupts disabled, and enables them only on
switching into a newly created thread context.  Zephyr does not have a
"turn interrupts on now, please" API at the architecture level.

So this creates one as an arch-specific wrapper around
_arch_irq_unlock().  It's implemented as an optional macro the arch
can define to enable this behavior, falling back to the previous
scheme (and printing a helpful message) if it doesn't find it defined.
Only ARM and x86 are enabled in this patch.

Fixes #8393

Signed-off-by: Andy Ross <andrew.j.ross@intel.com>
2018-08-27 16:15:10 -04:00
..
arc arch: arc: enable stack check when arc is in secure mode 2018-08-22 07:57:11 -07:00
arm kernel: Enable interrupts for MULTITHREADING=n on supported arch's 2018-08-27 16:15:10 -04:00
nios2 cmake: LD: Specify the entry point in the linker scripts 2018-07-03 17:18:14 -04:00
posix native: Generalize native tasks 2018-07-30 22:13:46 -04:00
riscv32 linker: riscv: Relocate .eh_frame symbol 2018-07-30 13:38:31 -05:00
x86 kernel: Enable interrupts for MULTITHREADING=n on supported arch's 2018-08-27 16:15:10 -04:00
xtensa include: remove unused macros from include/arch/*/arch.h 2018-06-20 12:07:59 -04:00
cpu.h arch: native: Run Zephyr natively in a POSIX OS 2017-12-27 14:16:08 -05:00
syscall.h syscall: Move arch specific syscall code into its own header 2018-08-02 22:06:49 -05:00