X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fcfg%2Fcfg_kern.h;h=1c716c9712493c88f2c862c8e98a53d991d090e7;hb=7c7aee2a95be7ee8b1c9f4b011a1274524bb664e;hp=368e59d0387fed43e07a9602542dca0f24e41c55;hpb=19e8a3eae634fead9c233f0c33adfb24c06365d4;p=bertos.git diff --git a/bertos/cfg/cfg_kern.h b/bertos/cfg/cfg_kern.h index 368e59d0..1c716c97 100644 --- a/bertos/cfg/cfg_kern.h +++ b/bertos/cfg/cfg_kern.h @@ -28,13 +28,11 @@ * * Copyright 2001,2004 Develer S.r.l. (http://www.develer.com/) * Copyright 1999,2000,2001 Bernie Innocenti - * * --> * * \brief Kernel configuration parameters * * \version $Id$ - * * \author Bernie Innocenti */ @@ -44,28 +42,42 @@ #include "cfg/cfg_arch.h" /* ARCH_EMUL */ /** - * Multithreading kernel. + * Enable the multithreading kernel. */ -#define CONFIG_KERNEL 0 +#define CONFIG_KERN 0 +#define CONFIG_KERNEL CONFIG_KERN // OBSOLETE /** - * \name Modules activation - * + * \name Optional kernel features * \{ */ /* Module/option Active Dependencies */ #define CONFIG_KERN_SCHED (0) #define CONFIG_KERN_SIGNALS (0 && CONFIG_KERN_SCHED) -#define CONFIG_KERN_TIMER (0) +#define CONFIG_KERN_IRQ (0) #define CONFIG_KERN_HEAP (0) #define CONFIG_KERN_SEMAPHORES (0 && CONFIG_KERN_SIGNALS) #define CONFIG_KERN_MONITOR (0 && CONFIG_KERN_SCHED) +#define CONFIG_KERN_PREEMPT (0 && CONFIG_KERN_SCHED && CONFIG_TIMER_EVENTS && CONFIG_KERN_IRQ) +#define CONFIG_KERN_PRI (0 && CINFIG_KERN_PREEMPT) /*\}*/ -/* EXPERIMENTAL */ -#define CONFIG_KERN_PREEMPTIVE (0 && CONFIG_KERN_SCHED && CONFIG_KERN_TIMER) +// FIXME: move somewhere +#define CONFIG_DEPEND(FEATURE, DEPENDENCIES) STATIC_ASSERT(!(FEATURE) || !!(DEPS)) + +CONFIG_DEPEND(CONFIG_KERN_PRI, CONFIG_KERN_PREEMPT); + + +/* OBSOLETE */ +#define CONFIG_KERN_PREEMPTIVE CONFIG_KERN_PREEMPT + +/// [ms] Time sharing quantum (a prime number prevents interference effects) +#define CONFIG_KERN_QUANTUM 47 -#define CONFIG_KERN_QUANTUM 50 /**< Time sharing quantum in timer ticks. */ +/// Module logging level. +#define KERN_LOG_LEVEL LOG_LVL_ERR +/// Module logging format. +#define KERN_LOG_FORMAT LOG_FMT_VERBOSE #endif /* CFG_KERN_H */