xref: /minix3/minix/kernel/kernel.h (revision 433d6423c39e34ec4b79c950597bb2d236f886be)
1 #ifndef KERNEL_H
2 #define KERNEL_H
3 
4 /* boot verbose */
5 #define CONFIG_BOOT_VERBOSE
6 
7 #ifndef CONFIG_MAX_CPUS
8 #define CONFIG_MAX_CPUS	1
9 #endif
10 
11 /* OXPCIe952 PCIe with 2 UARTs in-kernel support */
12 #define CONFIG_OXPCIE	0
13 
14 /* This is the master header for the kernel.  It includes some other files
15  * and defines the principal constants.
16  */
17 #define _SYSTEM            1	/* tell headers that this is the kernel */
18 
19 /*
20  * we need the defines above in assembly files to configure the kernel
21  * correctly. However we don't need the rest
22  */
23 #ifndef __ASSEMBLY__
24 
25 /* The following are so basic, all the *.c files get them automatically. */
26 #include <minix/config.h>	/* global configuration, MUST be first */
27 #include <sys/types.h>		/* general system types */
28 #include <minix/const.h>	/* MINIX specific constants */
29 #include <minix/type.h>		/* MINIX specific types, e.g. message */
30 #include <minix/ipc.h>		/* MINIX run-time system */
31 #include <minix/sysutil.h>	/* MINIX utility library functions */
32 #include <minix/timers.h>		/* watchdog timer management */
33 #include <errno.h>		/* return codes and error numbers */
34 #include <sys/param.h>
35 #include <minix/param.h>
36 
37 /* Important kernel header files. */
38 #include "kernel/config.h"		/* configuration, MUST be first */
39 #include "kernel/const.h"		/* constants, MUST be second */
40 #include "kernel/type.h"		/* type definitions, MUST be third */
41 #include "kernel/proto.h"		/* function prototypes */
42 #include "kernel/glo.h"		/* global variables */
43 #include "kernel/ipc.h"		/* IPC constants */
44 #include "kernel/profile.h"		/* system profiling */
45 #include "kernel/proc.h"		/* process table */
46 #include "kernel/cpulocals.h"		/* CPU-local variables */
47 #include "kernel/debug.h"		/* debugging, MUST be last kernel header */
48 
49 #ifndef CONFIG_SMP
50 /* We only support 1 cpu now */
51 #define CONFIG_MAX_CPUS	1
52 #define cpuid		0
53 /* this is always true on an uniprocessor */
54 #define cpu_is_bsp(x) 1
55 
56 #else
57 
58 #include "kernel/smp.h"
59 
60 #endif
61 
62 #endif /* __ASSEMBLY__ */
63 
64 #endif /* KERNEL_H */
65