/* SPDX-License-Identifier: BSD-2-Clause */
/*
 * Copyright (c) 2014, STMicroelectronics International N.V.
 */

#ifndef KERNEL_MISC_H
#define KERNEL_MISC_H

#include <arm.h>
#include <assert.h>
#include <kernel/thread.h>
#include <types_ext.h>

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*/

