*/
EXTERN_C void asm_switch_context(cpu_stack_t **new_sp, cpu_stack_t **save_sp);
+/**
+ * Define function prototypes exported outside.
+ *
+ * Required to silent gcc "no previous prototype" warnings.
+ */
+void coop_yield(void);
+void coop_switch(void);
/**
* System scheduler: pass CPU control to the next process in
#include "cfg/cfg_proc.h"
-#if CONFIG_KERN_PREEMPT
-
#include "proc_p.h"
#include "proc.h"
*/
int _proc_quantum;
+/**
+ * Define function prototypes exported outside.
+ *
+ * Required to silent gcc "no previous prototype" warnings.
+ */
+void preempt_yield(void);
+int preempt_needPreempt(void);
+void preempt_preempt(void);
+void preempt_switch(void);
+void preempt_init(void);
+
/**
* Call the scheduler and eventually replace the current running process.
*/
idle_init();
MOD_INIT(preempt);
}
-
-#endif // CONFIG_KERN_PREEMPT