diff --git a/Kconfig b/Kconfig index 6e0af6a6557..a5a7e551516 100644 --- a/Kconfig +++ b/Kconfig @@ -111,6 +111,14 @@ config SECTION_GARBAGE_COLLECTION Enabling this option may cause these host tools to end abnormally if the expected symbols have been discarded. +config BUILD_TIMESTAMP + bool + prompt "Build timestamp" + default n + help + This option embeds a string into the project image that indicates + the date and time the image was created. + endmenu source "drivers/Kconfig" diff --git a/drivers/Kconfig b/drivers/Kconfig index bd0b6feaf9f..cf0398f71e7 100644 --- a/drivers/Kconfig +++ b/drivers/Kconfig @@ -4,6 +4,10 @@ config DRV_CONSOLE help This option enables the UART console driver. +if DRV_CONSOLE +source "drivers/console/Kconfig" +endif + config DRV_SERIAL bool default n diff --git a/drivers/console/Kconfig b/drivers/console/Kconfig new file mode 100644 index 00000000000..295af56db7e --- /dev/null +++ b/drivers/console/Kconfig @@ -0,0 +1,16 @@ +config UART_INTERRUPT_DRIVEN + bool + prompt "Interrupt driven UART support" + default n + help + This option enables interrupt support for UART allowing console + input and UART based drivers. + +config CONSOLE_HANDLER + bool + prompt "Enable console input handler" + select UART_INTERRUPT_DRIVEN + default n + help + This option enables console input handler allowing to write simple + interaction between serial console and the OS. diff --git a/drivers/serial/Kconfig b/drivers/serial/Kconfig index 6dc7e538c21..8b04ce585ae 100644 --- a/drivers/serial/Kconfig +++ b/drivers/serial/Kconfig @@ -21,3 +21,11 @@ config DRV_STELLARIS_UART This option enables the Stellaris serial driver. This specific driver can be used for the serial hardware available at the Texas Instrument LM3S6965 BSP. + +config UART_INTERRUPT_DRIVEN + bool + prompt "Interrupt driven UART support" + default n + help + This option enables interrupt support for UART allowing console + input and UART based drivers. diff --git a/kernel/Kconfig b/kernel/Kconfig index a03bbe27437..e9d3e8be2d3 100644 --- a/kernel/Kconfig +++ b/kernel/Kconfig @@ -27,6 +27,25 @@ config SYS_CLOCK_HW_CYCLES_PER_SEC Frequency of the hardware timer used for the system clock (in Hz). +config TICKLESS_KERNEL + bool + # omit prompt to signify a "hidden" option + default y if (SYS_CLOCK_TICKS_PER_SEC = 0) + default n + help + This option specifies that the kernel lacks timer support. + +config INIT_STACKS + bool + prompt "Initialize stack areas" + default n + help + This option instructs the kernel to initialize stack areas with a + known value (0xaa) before they are first used, so that the high + water mark can be easily determined. This applies to the stack areas + for both tasks and fibers, as well as for the K_swapper's command + stack. + config XIP bool prompt "Execute in place" diff --git a/kernel/microkernel/core/Kconfig b/kernel/microkernel/core/Kconfig index c3fd797605c..cd548571242 100644 --- a/kernel/microkernel/core/Kconfig +++ b/kernel/microkernel/core/Kconfig @@ -66,7 +66,8 @@ config NUM_COMMAND_PACKETS config NUM_TIMER_PACKETS int - prompt "Number of timer packets" + prompt "Number of timer packets" if !TICKLESS_KERNEL + default 0 if TICKLESS_KERNEL default 10 depends on MICROKERNEL help diff --git a/kernel/microkernel/timer/Kconfig b/kernel/microkernel/timer/Kconfig index d3addf3d0aa..37ee862d478 100644 --- a/kernel/microkernel/timer/Kconfig +++ b/kernel/microkernel/timer/Kconfig @@ -5,7 +5,7 @@ config TIMESLICING bool prompt "Task time slicing" default y - depends on MICROKERNEL + depends on MICROKERNEL && !TICKLESS_KERNEL help This option enables time slicing between tasks of equal priority. diff --git a/kernel/nanokernel/core/Kconfig b/kernel/nanokernel/core/Kconfig index 59cf085bb62..e9104080e67 100644 --- a/kernel/nanokernel/core/Kconfig +++ b/kernel/nanokernel/core/Kconfig @@ -35,3 +35,11 @@ config ISR_STACK_SIZE help This option specifies the size of the stack used by interrupt service routines (ISRs), and during nanokernel initialization. + +config CONTEXT_CUSTOM_DATA + bool + prompt "Task and fiber custom data" + default n + help + This option allows each task and fiber to store 32 bits of custom data, + which can be accessed using the context_custom_data_xxx() APIs.