kernel: cleanup and formally define CPU start fn

The "key" parameter is legacy, remove it.

Add a typedef for the expected function pointer type.

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
This commit is contained in:
Andrew Boie 2020-01-10 12:51:38 -08:00 committed by Anas Nashif
commit a594ca7c8f
11 changed files with 28 additions and 22 deletions

View file

@ -159,6 +159,13 @@ void arch_cpu_atomic_idle(unsigned int key);
* @{
*/
/**
* Per-cpu entry function
*
* @param context parameter, implementation specific
*/
typedef FUNC_NORETURN void (*arch_cpustart_t)(void *data);
/**
* @brief Start a numbered CPU on a MP-capable system
*
@ -176,12 +183,11 @@ void arch_cpu_atomic_idle(unsigned int key);
* @param cpu_num Integer number of the CPU
* @param stack Stack memory for the CPU
* @param sz Stack buffer size, in bytes
* @param fn Function to begin running on the CPU. First argument is
* an irq_unlock() key.
* @param fn Function to begin running on the CPU.
* @param arg Untyped argument to be passed to "fn"
*/
void arch_start_cpu(int cpu_num, k_thread_stack_t *stack, int sz,
void (*fn)(int key, void *data), void *arg);
arch_cpustart_t fn, void *arg);
/** @} */