Add missing header.
[bertos.git] / config_kern.h
1 /*!
2  * \file
3  * <!--
4  * Copyright 2001,2004 Develer S.r.l. (http://www.develer.com/)
5  * Copyright 1999,2000,2001 Bernardo Innocenti <bernie@develer.com>
6  * This file is part of DevLib - See devlib/README for information.
7  * -->
8  *
9  * \brief Kernel configuration parameters
10  *
11  * \version $Id$
12  *
13  * \author Bernardo Innocenti <bernie@develer.com>
14  */
15
16 /*
17  * $Log$
18  * Revision 1.4  2004/08/24 16:19:38  bernie
19  * Add missing header.
20  *
21  * Revision 1.3  2004/07/30 14:24:16  rasky
22  * Task switching con salvataggio perfetto stato di interrupt (SR)
23  * Kernel monitor per dump informazioni su stack dei processi
24  *
25  * Revision 1.2  2004/06/03 11:27:09  bernie
26  * Add dual-license information.
27  *
28  * Revision 1.1  2004/05/23 17:48:35  bernie
29  * Add top-level files.
30  *
31  */
32 #ifndef CONFIG_KERN_H
33 #define CONFIG_KERN_H
34
35 #include <arch_config.h>  /* ARCH_EMUL */
36
37 /*!
38  * \name Modules activation
39  *
40  * \{
41  */
42 /*      Module/option          Active    Dependencies */
43 #define CONFIG_KERN_SCHED       (1)
44 #define CONFIG_KERN_SIGNALS     (1    && CONFIG_KERN_SCHED)
45 #define CONFIG_KERN_TIMER       (1)
46 #define CONFIG_KERN_HEAP        (0)
47 #define CONFIG_KERN_SEMAPHORES  (0    && CONFIG_KERN_SIGNALS)
48 #define CONFIG_KERN_MONITOR     (1    && CONFIG_KERN_SCHED)
49 /*\}*/
50
51 /* EXPERIMENTAL */
52 #define CONFIG_KERN_PREEMPTIVE  (0    && CONFIG_KERN_SCHED && CONFIG_KERN_TIMER)
53
54
55 #define CONFIG_KERN_HEAPSIZE    0x4000  /*!< Heap size (16KB) */
56 #define CONFIG_KERN_QUANTUM     50      /*!< Scheduler time sharing quantum in ticks */
57
58 #if (ARCH & ARCH_EMUL)
59         #define CONFIG_KERN_DEFSTACKSIZE  65536
60 #else
61         #define CONFIG_KERN_DEFSTACKSIZE  128  /*!< Default stack size for each thread */
62 #endif
63
64 /* Memory fill codes to help debugging */
65 #if CONFIG_KERN_MONITOR
66         #define CONFIG_KERN_STACKFILLCODE  0xA5A5
67         #define CONFIG_KERN_MEMFILLCODE    0xDBDB
68 #endif
69
70
71 #endif /*  CONFIG_KERN_H */