19#ifndef _COBALT_KERNEL_SCHED_WEAK_H
20#define _COBALT_KERNEL_SCHED_WEAK_H
22#ifndef _COBALT_KERNEL_SCHED_H
23#error "please don't include cobalt/kernel/sched-weak.h directly"
31#ifdef CONFIG_XENO_OPT_SCHED_WEAK
33#define XNSCHED_WEAK_MIN_PRIO 0
34#define XNSCHED_WEAK_MAX_PRIO 99
35#define XNSCHED_WEAK_NR_PRIO \
36 (XNSCHED_WEAK_MAX_PRIO - XNSCHED_WEAK_MIN_PRIO + 1)
38#if XNSCHED_WEAK_NR_PRIO > XNSCHED_CLASS_WEIGHT_FACTOR || \
39 (defined(CONFIG_XENO_OPT_SCALABLE_SCHED) && \
40 XNSCHED_WEAK_NR_PRIO > XNSCHED_MLQ_LEVELS)
41#error "WEAK class has too many priority levels"
44extern struct xnsched_class xnsched_class_weak;
47 xnsched_queue_t runnable;
50static inline int xnsched_weak_init_thread(
struct xnthread *thread)