19 #ifndef _COBALT_KERNEL_SCHED_SPORADIC_H 20 #define _COBALT_KERNEL_SCHED_SPORADIC_H 22 #ifndef _COBALT_KERNEL_SCHED_H 23 #error "please don't include cobalt/kernel/sched-sporadic.h directly" 31 #ifdef CONFIG_XENO_OPT_SCHED_SPORADIC 33 #define XNSCHED_SPORADIC_MIN_PRIO 1 34 #define XNSCHED_SPORADIC_MAX_PRIO 255 35 #define XNSCHED_SPORADIC_NR_PRIO \ 36 (XNSCHED_SPORADIC_MAX_PRIO - XNSCHED_SPORADIC_MIN_PRIO + 1) 38 extern struct xnsched_class xnsched_class_sporadic;
40 struct xnsched_sporadic_repl {
45 struct xnsched_sporadic_data {
46 xnticks_t resume_date;
51 struct xntimer repl_timer;
52 struct xntimer drop_timer;
53 struct xnsched_sporadic_repl repl_data[CONFIG_XENO_OPT_SCHED_SPORADIC_MAXREPL];
54 struct xnsched_sporadic_param param;
55 struct xnthread *thread;
58 struct xnsched_sporadic {
59 #ifdef CONFIG_XENO_OPT_DEBUG_COBALT 60 unsigned long drop_retries;
64 static inline int xnsched_sporadic_init_thread(
struct xnthread *thread)