NuttX Configuration Variables

Last Updated: March 08, 2017

Table of Contents

1 Menu: Main

Overview. The NuttX RTOS is highly configurable. The NuttX configuration files are maintained using the kconfig-frontends tool. That configuration tool uses Kconfig files that can be found through the NuttX source tree. Each Kconfig files contains declarations of configuration variables. Each configuration variable provides one configuration option for the NuttX RTOS. This configurable options are described in this document.

Main Menu. The normal way to start the NuttX configuration is to enter this command line from the NuttX build directory: make menuconfig. Note that NuttX must first be configured before this command so that the configuration file (.config) is present in the top-level build directory. The main menu is the name give to the opening menu display after this command is executed.

Maintenance Note. This documentation was auto-generated using the kconfig2html tool That tool analyzes the NuttX Kconfig files and generates this HTML document. This HTML document file should not be edited manually. In order to make changes to this document, you should instead modify the Kconfig file(s) that were used to generated this document and then execute the kconfig2html again to regenerate the HTML document file.

1.1 Menu: Build Setup

1.1.1 CONFIG_EXPERIMENTAL: Prompt for development and/or incomplete code/drivers

1.1.2 CONFIG_DEFAULT_SMALL: Default to smallest size

1.1.3 Choice: Build Host Platform

Choice Options:

1.1.4 Choice: Windows Build Environment

Choice Options:


1.1.6 Menu: Build Configuration CONFIG_APPS_DIR: Application directory Choice: Memory organization

Choice Options: CONFIG_BUILD_2PASS: Two pass build CONFIG_PASS1_TARGET: Pass one target CONFIG_PASS1_BUILDIR: Pass one build directory CONFIG_PASS1_OBJECT: Pass one object CONFIG_NUTTX_USERSPACE: Beginning of user-space blob

1.1.7 Menu: Binary Output Formats CONFIG_RRLOAD_BINARY: rrload binary format CONFIG_INTELHEX_BINARY: Intel HEX binary format CONFIG_MOTOROLA_SREC: Motorola S-Record binary format CONFIG_RAW_BINARY: Raw binary format CONFIG_UBOOT_UIMAGE: U-Boot uImage CONFIG_UIMAGE_LOAD_ADDRESS: uImage load address CONFIG_UIMAGE_ENTRY_POINT: uImage entry point

1.1.8 Menu: Customize Header Files CONFIG_ARCH_STDINT_H: stdint.h CONFIG_ARCH_STDBOOL_H: stdbool.h CONFIG_ARCH_MATH_H: math.h CONFIG_ARCH_FLOAT_H: float.h CONFIG_ARCH_STDARG_H: stdarg.h CONFIG_ARCH_DEBUG_H: debug.h

1.1.9 Menu: Debug Options CONFIG_DEBUG_FEATURES: Enable Debug Features CONFIG_DEBUG_ERROR: Enable Error Output CONFIG_DEBUG_WARN: Enable Warnings Output CONFIG_DEBUG_INFO: Enable Informational Debug Output CONFIG_DEBUG_ASSERTIONS: Enable Debug Assertions CONFIG_DEBUG_AUDIO: Audio Device Debug Features CONFIG_DEBUG_AUDIO_ERROR: Audio Device Error Output CONFIG_DEBUG_AUDIO_WARN: Audio Device Warnings Output CONFIG_DEBUG_AUDIO_INFO: Audio Device Informational Output CONFIG_DEBUG_BINFMT: Binary Loader Debug Features CONFIG_DEBUG_BINFMT_ERROR: Binary Loader Error Output CONFIG_DEBUG_BINFMT_WARN: Binary Loader Warnings Output CONFIG_DEBUG_BINFMT_INFO: Binary Loader Informational Output CONFIG_DEBUG_CRYPTO: Crypto Debug Features CONFIG_DEBUG_CRYPTO_ERROR: Crypto Error Output CONFIG_DEBUG_CRYPTO_WARN: Crypto Warnings Output CONFIG_DEBUG_CRYPTO_INFO: Crypto Informational Output CONFIG_DEBUG_FS: File System Debug Features CONFIG_DEBUG_FS_ERROR: File System Error Output CONFIG_DEBUG_FS_WARN: File System Warnings Output CONFIG_DEBUG_FS_INFO: File System Informational Output CONFIG_DEBUG_GRAPHICS: Graphics Debug Features CONFIG_DEBUG_GRAPHICS_ERROR: Graphics Error Output CONFIG_DEBUG_GRAPHICS_WARN: Graphics Warnings Output CONFIG_DEBUG_GRAPHICS_INFO: Graphics Informational Output CONFIG_DEBUG_LIB: C Library Debug Features CONFIG_DEBUG_LIB_ERROR: C Library Error Output CONFIG_DEBUG_LIB_WARN: C Library Warnings Output CONFIG_DEBUG_LIB_INFO: C Library Informational Output CONFIG_DEBUG_MM: Memory Manager Debug Features CONFIG_DEBUG_MM_ERROR: Memory Manager Error Output CONFIG_DEBUG_MM_WARN: Memory Manager Warnings Output CONFIG_DEBUG_MM_INFO: Memory Manager Informational Output CONFIG_DEBUG_SHM: Shared Memory Debug Output CONFIG_DEBUG_NET: Network Debug Features CONFIG_DEBUG_NET_ERROR: Network Error Output CONFIG_DEBUG_NET_WARN: Network Warnings Output CONFIG_DEBUG_NET_INFO: Network Informational Output CONFIG_DEBUG_SCHED: Scheduler Debug Features CONFIG_DEBUG_SCHED_ERROR: Scheduler Error Output CONFIG_DEBUG_SCHED_WARN: Scheduler Warnings Output CONFIG_DEBUG_SCHED_INFO: Scheduler Informational Output CONFIG_DEBUG_SYSCALL: SYSCALL Debug Features CONFIG_DEBUG_SYSCALL_ERROR: SYSCALL Error Output CONFIG_DEBUG_SYSCALL_WARN: SYSCALL Warnings Output CONFIG_DEBUG_SYSCALL_INFO: SYSCALL Informational Output CONFIG_DEBUG_WIRELESS: Wireless Device Debug Output CONFIG_DEBUG_DMA: DMA Debug Features CONFIG_DEBUG_DMA_ERROR: DMA Error Output CONFIG_DEBUG_DMA_WARN: DMA Warnings Output CONFIG_DEBUG_DMA_INFO: DMA Informational Output CONFIG_DEBUG_IRQ: Interrupt Controller Debug Features CONFIG_DEBUG_IRQ_ERROR: Interrupt Controller Error Output CONFIG_DEBUG_IRQ_WARN: Interrupt Controller Warnings Output CONFIG_DEBUG_IRQ_INFO: Interrupt Controller Informational Output CONFIG_DEBUG_PAGING: Paging Debug Features CONFIG_DEBUG_PAGING_ERROR: Paging Error Output CONFIG_DEBUG_PAGING_WARN: Paging Warnings Output CONFIG_DEBUG_PAGING_INFO: Paging Informational Output CONFIG_DEBUG_LCD: Low-level LCD Debug Features CONFIG_DEBUG_LCD_ERROR: LCD Driver Error Output CONFIG_DEBUG_LCD_WARN: LCD Driver Warnings Output CONFIG_DEBUG_LCD_INFO: LCD Driver Informational Output CONFIG_DEBUG_LEDS: Low-level LED Debug Features CONFIG_DEBUG_LEDS_ERROR: LED Driver Error Output CONFIG_DEBUG_LEDS_WARN: LED Driver Warnings Output CONFIG_DEBUG_LEDS_INFO: LED Driver Informational Output CONFIG_DEBUG_INPUT: Input Device Debug Features CONFIG_DEBUG_INPUT_ERROR: Input Device Error Output CONFIG_DEBUG_INPUT_WARN: Input Device Warnings Output CONFIG_DEBUG_INPUT_INFO: Input Device Informational Output CONFIG_DEBUG_ANALOG: Analog Device Debug Features CONFIG_DEBUG_ANALOG_ERROR: Analog Device Error Output CONFIG_DEBUG_ANALOG_WARN: Analog Device Warnings Output CONFIG_DEBUG_ANALOG_INFO: Analog Device Informational Output CONFIG_DEBUG_CAN: CAN Debug Features CONFIG_DEBUG_CAN_ERROR: CAN Error Output CONFIG_DEBUG_CAN_WARN: CAN Warnings Output CONFIG_DEBUG_CAN_INFO: CAN Informational Output CONFIG_DEBUG_GPIO: GPIO Debug Features CONFIG_DEBUG_GPIO_ERROR: GPIO Error Output CONFIG_DEBUG_GPIO_WARN: GPIO Warnings Output CONFIG_DEBUG_GPIO_INFO: GPIO Informational Output CONFIG_DEBUG_I2C: I2C Debug Features CONFIG_DEBUG_I2C_ERROR: I2C Error Output CONFIG_DEBUG_I2C_WARN: I2C Warnings Output CONFIG_DEBUG_I2C_INFO: I2C Informational Output CONFIG_DEBUG_I2S: I2S Debug Features CONFIG_DEBUG_I2S_ERROR: I2S Error Output CONFIG_DEBUG_I2S_WARN: I2S Warnings Output CONFIG_DEBUG_I2S_INFO: I2S Informational Output CONFIG_DEBUG_PWM: PWM Debug Features CONFIG_DEBUG_PWM_ERROR: PWM Error Output CONFIG_DEBUG_PWM_WARN: PWM Warnings Output CONFIG_DEBUG_PWM_INFO: PWM Informational Output CONFIG_DEBUG_RTC: RTC Debug Features CONFIG_DEBUG_RTC_ERROR: RTC Error Output CONFIG_DEBUG_RTC_WARN: RTC Warnings Output CONFIG_DEBUG_RTC_INFO: RTC Informational Output CONFIG_DEBUG_MEMCARD: Memory Card Driver Debug Features CONFIG_DEBUG_MEMCARD_ERROR: Memory Card Driver Error Output CONFIG_DEBUG_MEMCARD_WARN: Memory Card Driver Warnings Output CONFIG_DEBUG_MEMCARD_INFO: Memory Card Driver Informational Output CONFIG_DEBUG_SENSORS: Sensor Debug Features CONFIG_DEBUG_SENSORS_ERROR: Sensor Error Output CONFIG_DEBUG_SENSORS_WARN: Sensor Warnings Output CONFIG_DEBUG_SENSORS_INFO: Sensor Informational Output CONFIG_DEBUG_SPI: SPI Debug Features CONFIG_DEBUG_SPI_ERROR: SPI Error Output CONFIG_DEBUG_SPI_WARN: SPI Warnings Output CONFIG_DEBUG_SPI_INFO: SPI Informational Output CONFIG_DEBUG_TIMER: Timer Debug Features CONFIG_DEBUG_TIMER_ERROR: Timer Error Output CONFIG_DEBUG_TIMER_WARN: Timer Warnings Output CONFIG_DEBUG_TIMER_INFO: Timer Informational Output CONFIG_DEBUG_USB: USB Debug Features CONFIG_DEBUG_USB_ERROR: USB Error Output CONFIG_DEBUG_USB_WARN: USB Warnings Output CONFIG_DEBUG_USB_INFO: USB Informational Output CONFIG_DEBUG_WATCHDOG: Watchdog Timer Debug Features CONFIG_DEBUG_WATCHDOG_ERROR: Watchdog Timer Error Output CONFIG_DEBUG_WATCHDOG_WARN: Watchdog Timer Warnings Output CONFIG_DEBUG_WATCHDOG_INFO: Watchdog Timer Informational Output CONFIG_STACK_COLORATION: Stack coloration CONFIG_HEAP_COLORATION: Heap coloration CONFIG_DEBUG_SYMBOLS: Generate Debug Symbols

1.1.10 Choice: Optimization Level

Choice Options:

1.1.11 CONFIG_DEBUG_OPTLEVEL: Custom Optimization Level

1.2 Menu: System Type

1.2.1 Choice: CPU Architecture

Choice Options:

1.2.2 Choice: ARM chip selection

Choice Options:


1.2.4 CONFIG_ARMV7M_CMNVECTOR: Use common ARMv7-M vectors

1.2.5 CONFIG_ARMV7M_LAZYFPU: Lazy FPU storage

1.2.6 CONFIG_ARCH_FPU: FPU support

1.2.7 CONFIG_ARCH_DPFPU: Double precision FPU support

1.2.8 Choice: TrustZone Configuration

Choice Options:

1.2.9 CONFIG_ARM_MPU: MPU support

1.2.10 CONFIG_ARM_MPU_NREGIONS: Number of MPU regions

1.2.11 CONFIG_ARCH_LOWVECTORS: Vectors in low memory


1.2.13 CONFIG_DEBUG_HARDFAULT: Verbose Hard-Fault Debug

1.2.14 Choice: Toolchain Selection

Choice Options:

1.2.15 Menu: L2 Cache Configuration CONFIG_ARMV7A_L2CC_PL310: ARMv7-A L2CC P310 Support CONFIG_PL310_LOCKDOWN_BY_MASTER: PL310 Lockdown by Master CONFIG_PL310_LOCKDOWN_BY_LINE: PL310 Lockdown by Line CONFIG_PL310_ADDRESS_FILTERING: PL310 Address Filtering by Line Choice: L2 Cache Associativity

Choice Options: Choice: L2 Cache Way Size

Choice Options:

1.2.16 Choice: Toolchain Selection

Choice Options:



1.2.19 CONFIG_ARMV7M_ICACHE: Use I-Cache

1.2.20 CONFIG_ARMV7M_DCACHE: Use D-Cache




1.2.24 Choice: Toolchain Selection

Choice Options: