mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2025-12-25 14:33:52 +01:00
Merge pull request #1866 from OlegHahm/core_fix_thread_init_prototype
cpu: use typed function pointer for thread_arch_init
This commit is contained in:
commit
b46d3d9d1a
@ -25,6 +25,7 @@
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include "kernel_internal.h"
|
||||
/**
|
||||
* @name Define the mapping between the architecture independent interfaces
|
||||
* and the kernel internal interfaces
|
||||
@ -52,7 +53,7 @@
|
||||
*
|
||||
* @return pointer to the new top of the stack
|
||||
*/
|
||||
char *thread_arch_stack_init(void *(*function)(void *arg), void *arg, void *stack_start, int stack_size);
|
||||
char *thread_arch_stack_init(thread_task_func_t task_func, void *arg, void *stack_start, int stack_size);
|
||||
|
||||
/**
|
||||
* @brief Print the current stack to stdout
|
||||
|
||||
@ -79,7 +79,7 @@ kernel_pid_t thread_create(char *stack,
|
||||
int stacksize,
|
||||
char priority,
|
||||
int flags,
|
||||
void *(*function)(void *arg),
|
||||
thread_task_func_t task_func,
|
||||
void *arg,
|
||||
const char *name);
|
||||
|
||||
|
||||
@ -105,7 +105,7 @@ uintptr_t thread_measure_stack_free(char *stack)
|
||||
}
|
||||
#endif
|
||||
|
||||
kernel_pid_t thread_create(char *stack, int stacksize, char priority, int flags, void *(*function)(void *arg), void *arg, const char *name)
|
||||
kernel_pid_t thread_create(char *stack, int stacksize, char priority, int flags, thread_task_func_t function, void *arg, const char *name)
|
||||
{
|
||||
if (priority >= SCHED_PRIO_LEVELS) {
|
||||
return -EINVAL;
|
||||
|
||||
@ -67,8 +67,8 @@ static void __enter_thread_mode(void);
|
||||
* it inside of the programm counter of the MCU.
|
||||
* if task_func returns sched_task_exit gets popped into the PC
|
||||
*/
|
||||
char *thread_arch_stack_init(void *(*task_func)(void *), void *arg, void *stack_start,
|
||||
int stack_size)
|
||||
char *thread_arch_stack_init(thread_task_func_t task_func, void *arg,
|
||||
void *stack_start, int stack_size)
|
||||
{
|
||||
uint16_t tmp_adress;
|
||||
uint8_t *stk;
|
||||
|
||||
@ -60,7 +60,7 @@ static void context_restore(void);
|
||||
* lowest address highest address
|
||||
*
|
||||
*/
|
||||
char *thread_arch_stack_init(void *(*task_func)(void *),
|
||||
char *thread_arch_stack_init(thread_task_func_t task_func,
|
||||
void *arg,
|
||||
void *stack_start,
|
||||
int stack_size)
|
||||
|
||||
@ -54,7 +54,7 @@ static void context_restore(void) NORETURN;
|
||||
* --------------------------------------
|
||||
*
|
||||
*/
|
||||
char *thread_arch_stack_init(void *(*task_func)(void *), void *arg, void *stack_start, int stack_size)
|
||||
char *thread_arch_stack_init(thread_task_func_t task_func, void *arg, void *stack_start, int stack_size)
|
||||
{
|
||||
uint32_t *stk;
|
||||
stk = (uint32_t *)((uintptr_t)stack_start + stack_size);
|
||||
|
||||
@ -57,7 +57,7 @@
|
||||
* --------------------------------------
|
||||
*
|
||||
*/
|
||||
char *thread_arch_stack_init(void *(*task_func)(void *),
|
||||
char *thread_arch_stack_init(thread_task_func_t task_func,
|
||||
void *arg,
|
||||
void *stack_start,
|
||||
int stack_size)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user