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