/* SPDX-License-Identifier: BSD-2-Clause */ /* * Copyright (c) 2014, STMicroelectronics International N.V. */ #ifndef KERNEL_MISC_H #define KERNEL_MISC_H #include #include #include #include size_t __get_core_pos(void); static inline size_t __noprof get_core_pos(void) { /* * Foreign interrupts must be disabled before playing with current * core since we otherwise may be rescheduled to a different core. */ assert(thread_get_exceptions() & THREAD_EXCP_FOREIGN_INTR); return __get_core_pos(); } size_t get_core_pos_mpidr(uint32_t mpidr); uint32_t read_mode_sp(int cpu_mode); uint32_t read_mode_lr(int cpu_mode); #endif /*KERNEL_MISC_H*/