zephyr/kernel
Ioannis Glaropoulos 60bd51aa37 kernel: init: allow custom switch to main for no-multithreading case
Certain architectures, such as ARM Cortex-M require a custom
switch to main(), in case the case we build Zephyr without
support for multithreading (CONFIG_MULTITHREADING=n). So as
to keep the change to kernel/init.c as unintrusive as
possible, we install an ARCH-specific hook in z_cstart(),
which gets called for architectures that require this
customized switch to main() function.

Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
2020-08-07 13:06:04 +02:00
..
include kernel: z_interrupt_stacks are now kernel stacks 2020-07-30 21:11:14 -04:00
atomic_c.c kernel: Add k_heap synchronized memory allocator 2020-04-14 10:05:55 -07:00
cache_handlers.c syscalls: Add system call for cache flush & invalidate 2020-08-04 17:26:45 -04:00
CMakeLists.txt cmake: fix include directories to work with out-of-tree arch 2020-08-05 08:06:07 -04:00
compiler_stack_protect.c kernel: Fix gcc-9.2 warning with _StackCheckHandler 2019-10-04 05:22:30 -07:00
device.c device: add API to check whether a device is ready to use 2020-06-23 13:27:14 +02:00
errno.c headers: Refactor kernel and arch headers. 2019-11-06 16:07:32 -08:00
fatal.c kernel: fatal: fix indentation in z_fatal_error 2020-03-11 10:26:36 +02:00
futex.c kernel/timeout: Make timeout arguments an opaque type 2020-03-31 19:40:47 -04:00
idle.c zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
init.c kernel: init: allow custom switch to main for no-multithreading case 2020-08-07 13:06:04 +02:00
Kconfig kernel: overhaul stack specification 2020-07-30 21:11:14 -04:00
Kconfig.power_mgmt kconfig: Clean up header comments and make them consistent 2019-11-04 17:31:27 -05:00
kheap.c zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
mailbox.c zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
mem_domain.c kernel: mem_domain: centralize assertions 2020-07-20 15:32:16 +02:00
mem_slab.c zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
mempool.c kernel: Refactor k_mem_pool APIs into a base and derived level 2020-04-14 10:05:55 -07:00
mempool_sys.c zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
mmu.c kernel: add k_mem_map() and related defines 2020-07-17 11:38:18 +02:00
msg_q.c zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
mutex.c kernel: cleanup header inclusion 2020-06-25 16:12:36 -05:00
pipes.c kernel: pipes: rename inner spinlock keys 2020-07-25 21:26:15 -04:00
poll.c kernel: cleanup header inclusion 2020-06-25 16:12:36 -05:00
queue.c kernel: cleanup header inclusion 2020-06-25 16:12:36 -05:00
sched.c tests: adding test cases for arch-dependent SMP function 2020-07-02 08:42:53 -04:00
sem.c kernel: cleanup header inclusion 2020-06-25 16:12:36 -05:00
smp.c kernel: smp: avoid identifier collisions 2020-07-25 21:26:15 -04:00
stack.c kernel: cleanup header inclusion 2020-06-25 16:12:36 -05:00
system_work_q.c kernel: sys_workq thread stack is kernel-only 2020-07-30 21:11:14 -04:00
thread.c kernel: introduce supervisor-only stacks 2020-07-30 21:11:14 -04:00
thread_abort.c kernel: use z_swap_unlocked in k_thread_abort 2020-03-12 10:57:02 -04:00
timeout.c kernel: timeout: avoid identifier collisions 2020-07-25 21:26:15 -04:00
timer.c zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
userspace.c kernel: introduce supervisor-only stacks 2020-07-30 21:11:14 -04:00
userspace_handler.c userspace: improve dynamic object allocation 2020-06-03 22:33:32 +02:00
version.c zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
work_q.c kernel: Add k_delayed_work_pending to check if work has been submitted 2020-08-04 17:32:56 +02:00