1/* 2 * Copyright 2014, General Dynamics C4 Systems 3 * 4 * This software may be distributed and modified according to the terms of 5 * the GNU General Public License version 2. Note that NO WARRANTY is provided. 6 * See "LICENSE_GPLv2.txt" for details. 7 * 8 * @TAG(GD_GPL) 9 */ 10 11#ifndef __CONFIG_H 12#define __CONFIG_H 13 14/* Compile-time configuration parameters. Might be set by the build system. */ 15 16#ifdef HAVE_AUTOCONF 17#include <autoconf.h> 18#endif 19 20/* size of the initial thread's root CNode (2^x slots, x >= 4) */ 21#ifndef CONFIG_ROOT_CNODE_SIZE_BITS 22#define CONFIG_ROOT_CNODE_SIZE_BITS 12 23#endif 24 25/* number of timer ticks until a thread is preempted */ 26#ifndef CONFIG_TIME_SLICE 27#define CONFIG_TIME_SLICE 5 28#endif 29 30/* the number of scheduler domains */ 31#ifndef CONFIG_NUM_DOMAINS 32#define CONFIG_NUM_DOMAINS 16 33#endif 34 35/* number of priorities per domain */ 36#ifndef CONFIG_NUM_PRIORITIES 37#define CONFIG_NUM_PRIORITIES 256 38#endif 39 40/* maximum number of caps that can be created in one retype invocation */ 41#ifndef CONFIG_RETYPE_FAN_OUT_LIMIT 42#define CONFIG_RETYPE_FAN_OUT_LIMIT 256 43#endif 44 45/* chunk size for memory clears during retype, in bits. */ 46#ifndef CONFIG_RESET_CHUNK_BITS 47#define CONFIG_RESET_CHUNK_BITS 8 48#endif 49 50/* maximum number of iterations until we preempt a delete/revoke invocation */ 51#ifndef CONFIG_MAX_NUM_WORK_UNITS_PER_PREEMPTION 52#define CONFIG_MAX_NUM_WORK_UNITS_PER_PREEMPTION 100 53#endif 54 55/* address range to flush per preemption work unit */ 56#ifndef CONFIG_FLUSH_WORK_UNIT 57#define CONFIG_FLUSH_WORK_UNIT 64 58#endif 59 60/* maximum number of untyped caps in bootinfo */ 61/* WARNING: must match value in libsel4! */ 62/* CONSTRAINT: (16 * CONFIG_MAX_NUM_BOOTINFO_DEVICE_REGIONS) + (5 * CONFIG_MAX_NUM_BOOTINFO_UNTYPED_CAPS) <= 4036 */ 63#ifndef CONFIG_MAX_NUM_BOOTINFO_UNTYPED_CAPS 64#define CONFIG_MAX_NUM_BOOTINFO_UNTYPED_CAPS 166 65#endif 66 67/* length of a timer tick in ms */ 68#ifndef CONFIG_TIMER_TICK_MS 69#define CONFIG_TIMER_TICK_MS 2 70#endif 71 72/* maximum number of different tracepoints which can be placed in the kernel */ 73#ifndef CONFIG_MAX_NUM_TRACE_POINTS 74#define CONFIG_MAX_NUM_TRACE_POINTS 0 75#endif 76 77/* maximum number of IOMMU RMRR entries we can record while ACPI parsing */ 78#ifndef CONFIG_MAX_RMRR_ENTRIES 79#define CONFIG_MAX_RMRR_ENTRIES 32 80#endif 81 82/* maximum number of IOAPIC supported */ 83#ifndef CONFIG_MAX_NUM_IOAPIC 84#define CONFIG_MAX_NUM_IOAPIC 1 85#endif 86 87/* Alias CONFIG_MAX_NUM_NODES > 1 to ENABLE_SMP_SUPPORT */ 88#if CONFIG_MAX_NUM_NODES > 1 89#define ENABLE_SMP_SUPPORT 90#endif 91 92#endif /* __CONFIG_H */ 93