diff --git a/nuttx/ChangeLog b/nuttx/ChangeLog index 3806700fb3..2b33ec0d3b 100644 --- a/nuttx/ChangeLog +++ b/nuttx/ChangeLog @@ -2620,4 +2620,18 @@ available at http://ymorin.is-a-geek.org/projects/kconfig-frontends (version 3.3.0-1 is also available in the NuttX SVN at trunk/misc/tools/kconfig-frontends-3.3.0-1.tar.gz). Contributed by Lzyy. - + * */Kconfig: Added skeleton Kconfig files to all directories that + may need them. + * include/nuttx/math.h: Moved include/math.h to include/nuttx/math.h + because it conflicts too often with the system math.h (and people aren't + inclined to read the documentation on how to handle this). Now, if + CONFIG_ARCH_MATH_H=y is defined, the top-level makefile will copy + the redirecting math.h header file from include/nuttx/math.h to + include/math.h. So for the architectures that define CONFIG_ARCH_MATH_H=y, + include/math.h will be in place as it was before; for the architectures + that don't select CONFIG_ARCH_MATH_H, the redirecting math.h header + file will stay out-of-the-way in include/nuttx/. + * Kconfig, sched/Kconfig, lib/Kconfig, libxx/Kconfig, arch/sim/Kconfig, + drivers/Kconfig, drivers/mtd/Kconfig, drivers/input/Kconfig + drivers/analog/Kconfig, drivers/lcd/Kconfig: Updated kernel + configuration support provided by Lzyy. diff --git a/nuttx/Kconfig b/nuttx/Kconfig index 22fb3f97f3..6b0973f2c2 100644 --- a/nuttx/Kconfig +++ b/nuttx/Kconfig @@ -2,6 +2,7 @@ # For a description of the syntax of this configuration file, # see misc/tools/kconfig-language.txt. # + mainmenu "Nuttx/$ARCH Configuration" config SRCARCH @@ -16,463 +17,126 @@ comment "General build options" config RRLOAD_BINARY bool "rrload binary format" - default "n" + default n config INTELHEX_BINARY bool "Intel HEX binary format" - default "n" + default n config MOTOROLA_SREC bool "Motorola S-Record binary format" - default "n" + default n config RAW_BINARY bool "raw binary format" - default "n" -config HAVE_LIBM - bool "supports libm.a" - default "n" + default n comment "General debug options" config DEBUG bool "enable debug" - default "n" + default n + ---help--- + enables built-in debug options +if DEBUG config DEBUG_VERBOSE - bool "enable verbose debug output" - depends on DEBUG - default "n" + bool "enable debug verbose" + default n + ---help--- + enables verbose debug output + +config DEBUG_ENABLE + bool "enable debug interface" + default n + ---help--- + Support an interface to enable or disable debug output. + config DEBUG_SYMBOLS - bool "build with debug symbols" - default "n" - + bool "enable debug symbols" + default n + ---help--- + build without optimization and with + debug symbols (needed for use with a debugger). + +config DEBUG_SCHED + bool "enable debug sched" + default n + ---help--- + enable OS debug output (disabled by + default) + +config DEBUG_MM + bool "enable debug mm" + default n + ---help--- + enable memory management debug output + (disabled by default) + +config DEBUG_NET + bool "enable debug net" + default n + ---help--- + enable network debug output (disabled + by default) + +config DEBUG_USB + bool "enable debug usb" + default n + ---help--- + enable usb debug output (disabled by + default) + +config DEBUG_FS + bool "enable debug fs" + default n + ---help--- + enable filesystem debug output (disabled + by default) + +config DEBUG_LIB + bool "enable debug lib" + default n + ---help--- + enable C library debug output (disabled + by default) + +config DEBUG_BINFMT + bool "enable debug binfmt" + default n + ---help--- + enable binary loader debug output (disabled + by default) + +config DEBUG_GRAPHICS + bool "enable debug graphics" + default n + ---help--- + enable NX graphics debug output + (disabled by default) +endif endmenu menu "System Type" source "arch/$SRCARCH/Kconfig" - -config ARCH_LOWPUTC - bool "low-level console output" - default "y" - ---help--- - architecture supports low-level, boot time console output - -comment "Architecture optimized function" - -config ARCH_MEMCPY - bool "memcpy" - default n -config ARCH_MEMCMP - bool "memcmp" - default n -config ARCH_MEMMOVE - bool "memmove" - default n -config ARCH_MEMSET - bool "memset" - default n -config ARCH_STRCMP - bool "strcmp" - default n -config ARCH_STRCPY - bool "strcpy" - default n -config ARCH_STRNCPY - bool "strncpy" - default n -config ARCH_STRLEN - bool "strlen" - default n -config ARCH_STRNLEN - bool "strlen" - default n -config ARCH_BZERO - bool "bzero" - default n - endmenu menu "Kernel Features" -config MM_REGIONS - int "number of memory regions" - default 1 - ---help--- - If the architecture includes multiple - regions of memory to allocate from, this specifies the - number of memory regions that the memory manager must - handle and enables the API mm_addregion(start, end); - -config MSEC_PER_TICK - int "tick timer" - default 10 - ---help--- - The default system timer is 100Hz - or MSEC_PER_TICK=10. This setting may be defined to - inform NuttX that the processor hardware is providing - system timer interrupts at some interrupt interval other - than 10 msec. - -config RR_INTERVAL - int "round robin timeslice" - default 0 - ---help--- - The round robin timeslice will be set - this number of milliseconds; Round robin scheduling can - be disabled by setting this value to zero. - -config SCHED_INSTRUMENTATION - bool "monitor system performance" - default n - ---help--- - enables instrumentation in - scheduler to monitor system performance - -config TASK_NAME_SIZE - int "task name size" - default 32 - ---help--- - Spcifies that maximum size of a - task name to save in the TCB. Useful if scheduler - instrumentation is selected. Set to zero to disable. - -config JULIAN_TIME - bool "Enables Julian time conversions" - default n - ---help--- - Enables Julian time conversions - -config START_YEAR - int "start year" - default 2010 - -config START_MONTH - int "start month" - default 1 - -config START_DAY - int "start day" - default 1 - -config DEV_CONSOLE - bool "enable /dev/console" - default y - ---help--- - Set if architecture-specific logic - provides /dev/console. Enables stdout, stderr, stdin. - -config DEV_LOWCONSOLE - bool "enable low-level serial console" - default n - ---help--- - Use the simple, low-level serial console - driver (minimul support) - -config MUTEX_TYPES: - bool "enable mutex types" - default n - ---help--- - Set to enable support for recursive and - errorcheck mutexes. Enables pthread_mutexattr_settype(). - -config PRIORITY_INHERITANCE - bool "enable priority inheritance " - default n - ---help--- - Set to enable support for priority - inheritance on mutexes and semaphores. - -config SEM_PREALLOCHOLDERS - int "pre alloc holders" - default 16 - depends on PRIORITY_INHERITANCE - ---help--- - This setting is only used if priority - inheritance is enabled. It defines the maximum number of - different threads (minus one) that can take counts on a - semaphore with priority inheritance support. This may be - set to zero if priority inheritance is disabled OR if you - are only using semaphores as mutexes (only one holder) OR - if no more than two threads participate using a counting - semaphore. - -config SEM_NNESTPRIO - int "maximum number of higher priority threads" - default 16 - depends on PRIORITY_INHERITANCE - ---help--- - If priority inheritance is enabled, - then this setting is the maximum number of higher priority - threads (minus 1) than can be waiting for another thread - to release a count on a semaphore. This value may be set - to zero if no more than one thread is expected to wait for - a semaphore. - -config FDCLONE_DISABLE - bool "disable clone all file descriptors" - default n - ---help--- - Disable cloning of all file descriptors - by task_create() when a new task is started. If set, all - files/drivers will appear to be closed in the new task. - -config FDCLONE_STDIO - bool "disable clone file descriptors without stdio" - default n - ---help--- - Disable cloning of all but the first - three file descriptors (stdin, stdout, stderr) by task_create() - when a new task is started. If set, all files/drivers will - appear to be closed in the new task except for stdin, stdout, - and stderr. - -config SDCLONE_DISABLE - bool "disable cloning of all socket" - default n - ---help--- - Disable cloning of all socket - desciptors by task_create() when a new task is started. If - set, all sockets will appear to be closed in the new task. - -config DISABLE_OS_API - bool "disable os api" - default n - ---help--- - The following can be used to disable categories of - APIs supported by the OS. If the compiler supports - weak functions, then it should not be necessary to - disable functions unless you want to restrict usage - of those APIs. - - There are certain dependency relationships in these - features. - - o mq_notify logic depends on signals to awaken tasks - waiting for queues to become full or empty. - o pthread_condtimedwait() depends on signals to wake - up waiting tasks. - -config DISABLE_CLOCK - bool "disable clock" - depends on DISABLE_OS_API - default n - -config DISABLE_POSIX_TIMERS - bool "disable posix timers" - depends on DISABLE_OS_API - default n - -config DISABLE_PTHREAD - bool "disable pthread" - depends on DISABLE_OS_API - default n - -config DISABLE_SIGNALS - bool "disable signals" - depends on DISABLE_OS_API - default n - -config DISABLE_MQUEUE - bool "disable mqueue" - depends on DISABLE_OS_API - default n - -config DISABLE_MOUNTPOINT - bool "disable mount point" - depends on DISABLE_OS_API - default n - -config DISABLE_ENVIRON - bool "disable environ" - depends on DISABLE_OS_API - default n - -config DISABLE_POLL - bool "disable poll" - depends on DISABLE_OS_API - default n - -comment "Sizes of configurable things (0 disables)" - -config MAX_TASKS - int "max tasks" - default 32 - ---help--- - The maximum number of simultaneously - active tasks. This value must be a power of two. - -config MAX_TASK_ARGS - int "max task args" - default 4 - ---help--- - This controls the maximum number of - of parameters that a task may receive (i.e., maxmum value - of 'argc') - -config NPTHREAD_KEYS - int "number pthread keys" - default 4 - ---help--- - The number of items of thread- - specific data that can be retained - -config NFILE_DESCRIPTORS - int "max file descriptors" - default 16 - ---help--- - The maximum number of file - descriptors (one for each open) - -config NFILE_STREAMS - int "max file streams" - default 16 - ---help--- - The maximum number of streams that - can be fopen'ed - -config NAME_MAX - int "name max" - default 32 - ---help--- - The maximum size of a file name. - -config STDIO_BUFFER_SIZE - int "stdio buffer size" - default 256 - ---help--- - Size of the buffer to allocate - on fopen. (Only if config _NFILE_STREAMS > 0) - -config NUNGET_CHARS - int "number get chars" - default 2 - ---help--- - Number of characters that can be - buffered by ungetc() (Only if config _NFILE_STREAMS > 0) - -config PREALLOC_MQ_MSGS - int "pre alloc mq_msgs" - default 32 - ---help--- - The number of pre-allocated message - structures. The system manages a pool of preallocated - message structures to minimize dynamic allocations - -config MQ_MAXMSGSIZE - int "mq max message size" - default 32 - ---help--- - Message structures are allocated with - a fixed payload size given by this settin (does not include - other message structure overhead. - -config MAX_WDOGPARMS - int "max watchdog parms" - default 4 - ---help--- - Maximum number of parameters that - can be passed to a watchdog handler - -config PREALLOC_WDOGS - int "pre alloc watchdogs" - default 32 - ---help--- - The number of pre-allocated watchdog - structures. The system manages a pool of preallocated - watchdog structures to minimize dynamic allocations - -config PREALLOC_TIMERS - int "pre alloc timers" - default 8 - ---help--- - The number of pre-allocated POSIX - timer structures. The system manages a pool of preallocated - timer structures to minimize dynamic allocations. Set to - zero for all dynamic allocations. - - -comment "Stack and heap information" - -config BOOT_RUNFROMFLASH - bool "boot run from flash" - default n - ---help--- - Some configurations support XIP - operation from FLASH but must copy initialized .data sections to RAM. - (should also be =n for the LPC17xx which always runs from flash) - -config BOOT_COPYTORAM - bool "boot copy to ram" - default n - ---help--- - Some configurations boot in FLASH - but copy themselves entirely into RAM for better performance. - -config CUSTOM_STACK - bool "enable custom stack" - default n - ---help--- - The up_ implementation will handle - all stack operations outside of the nuttx model. - -config STACK_POINTER - hex "" - default 0 - ---help--- - The initial stack pointer (arm7tdmi only) - -config IDLETHREAD_STACKSIZE - int "idle thread stack size" - default 1024 - ---help--- - The size of the initial stack. - This is the thread that (1) performs the inital boot of the system up - to the point where user_start() is spawned, and (2) there after is the - IDLE thread that executes only when there is no other thread ready to - run. - -config USERMAIN_STACKSIZE - int "main thread stack size" - default 2048 - ---help--- - The size of the stack to allocate - for the main user thread that begins at the user_start() entry point. - -config PTHREAD_STACK_MIN - int "minimum thrad stack size" - default 256 - ---help--- - Minimum pthread stack size - -config PTHREAD_STACK_DEFAULT - int "default stack size" - default 2048 - ---help--- - Default pthread stack size - +source sched/Kconfig endmenu menu "Device Drivers" -#source drivers/Kconfig +source drivers/Kconfig endmenu menuconfig NET bool "Networking support" - default "m" + default n if NET -#source net/Kconfig +source net/Kconfig endif menu "File systems" -#source fs/Kconfig +source fs/Kconfig endmenu menu "Library routines" -config NOPRINTF_FIELDWIDTH - bool "disable sprintf support fieldwidth" - default n - ---help--- - sprintf-related logic is a - little smaller if we do not support fieldwidthes - -endmenu - -menu "Application setup" - +source lib/Kconfig +source libxx/Kconfig endmenu diff --git a/nuttx/arch/sim/Kconfig b/nuttx/arch/sim/Kconfig index 99650dcbbd..08f9a5f63c 100644 --- a/nuttx/arch/sim/Kconfig +++ b/nuttx/arch/sim/Kconfig @@ -1,21 +1,16 @@ -choice - prompt "Simulator system type" - default ARCH_SIM - -config ARCH_SIM - bool "x86 Linux user-mode" - ---help--- - A user-mode port of NuttX to the x86 Linux platform is available. - The purpose of this port is primarily to support OS feature development. - This port does not support interrupts or a real timer (and hence no - round robin scheduler) Otherwise, it is complete. - -endchoice +# +# For a description of the syntax of this configuration file, +# see misc/tools/kconfig-language.txt. +# config ARCH string - default "sim" if ARCH_SIM - + default "sim" + +config ARCH_SIM + bool + default y + choice prompt "Simulator board type" default ARCH_BOARD_SIM @@ -28,18 +23,14 @@ config ARCH_BOARD_SIM This port does not support interrupts or a real timer (and hence no round robin scheduler) Otherwise, it is complete. -endchoice +config ARCH_BOARD_WIN32 + bool "x86 Win32 user-mode(NOT SUPPORT)" + ---help--- + THIS PORT NOT SUPPORT. +endchoice + config ARCH_BOARD string default "sim" if ARCH_BOARD_SIM -comment "OMAP Board Type" - depends on ARCH_OMAP2PLUS - -config MACH_OMAP_GENERIC - bool "Generic OMAP board" - depends on ARCH_OMAP2 - default y - - diff --git a/nuttx/drivers/Kconfig b/nuttx/drivers/Kconfig index ae2bf31307..e5148e6b4b 100644 --- a/nuttx/drivers/Kconfig +++ b/nuttx/drivers/Kconfig @@ -2,3 +2,224 @@ # For a description of the syntax of this configuration file, # see misc/tools/kconfig-language.txt. # + +config DEV_NULL + bool "Enable /dev/null" + default y + +config DEV_ZERO + bool "Enable /dev/zero" + default y + +config LOOP + bool "Enable loop device" + default n + ---help--- + Supports the standard loop device that can be used to export a + file (or character device) as a block device. See losetup() and + loteardown() in include/nuttx/fs/fs.h. + +config RAMDISK + bool "RAM disk support" + default n + ---help--- + Can be used to set up a block of memory or (read-only) FLASH as + a block driver that can be mounted as a files system. See + include/nuttx/ramdisk.h. + +config RAMLOG + bool "RAM log message support" + default n + ---help--- + This is a driver that was intended to support debugging output, + aka syslogging, when the normal serial output is not available. + For example, if you are using a telnet or USB serial console, + the debug output will get lost. + + This driver is similar to a pipe in that it saves the debugging + output in a FIFO in RAM. It differs from a pipe in numerous + details as needed to support logging. + +config CAN + bool "CAN support" + default n + +config PWM + bool "PWM support" + default n + +config I2C + bool "I2C support" + default y + +config SPI + bool "SPI support" + default y + +menuconfig ANALOG + bool "Analog Device(adc,dac) support" + default n + ---help--- + This directory holds implementations of analog device drivers. + This includes drivers for Analog to Digital Conversion (ADC) as + well as drivers for Digital to Analog Conversion (DAC). + See include/nuttx/analog/*.h for registration information. +if ANALOG +source drivers/analog/Kconfig +endif + +config BCH + bool "BCH support" + default n + ---help--- + Contains logic that may be used to convert a block driver into + a character driver. This is the complementary conversion as that + performed by loop.c. See include/nuttx/fs/fs.h for registration + information. +if BCH +source drivers/bch/Kconfig +endif + +menuconfig INPUT + bool "Input device support" + default y + ---help--- + This directory holds implementations of input device drivers. + This includes such things as touchscreen and keypad drivers. + See include/nuttx/input/*.h for registration information. +if INPUT +source drivers/input/Kconfig +endif + +menuconfig LCD + bool "LCD support" + default n + select NX_LCDDRIVER + ---help--- + Drivers for parallel and serial LCD and OLED type devices. These + drivers support interfaces as defined in include/nuttx/lcd/lcd.h +if LCD +source drivers/lcd/Kconfig +endif + +menuconfig MMCSD + bool "MMC/SD support" + default n + ---help--- + Support for MMC/SD block drivers. MMC/SD block drivers based on + SPI and SDIO/MCI interfaces are supported. See include/nuttx/mmcsd.h + and include/nuttx/sdio.h for further information. + +if MMCSD +source drivers/mmcsd/Kconfig +endif + +menuconfig MTD + bool "Memory Technology Device (MTD) support" + default n + ---help--- + Memory Technology Device (MTD) drivers. Some simple drivers for + memory technologies like FLASH, EEPROM, NVRAM, etc. See + include/nuttx/mtd.h + + (Note: This is a simple memory interface and should not be + confused with the "real" MTD developed at infradead.org. This + logic is unrelated; I just used the name MTD because I am not + aware of any other common way to refer to this class of devices). +if MTD +source drivers/mtd/Kconfig +endif + +menuconfig NETDEVICES + bool "Network Device support" + default n + ---help--- + Network interface drivers. See also include/nuttx/net/net.h +if NETDEVICES +source drivers/net/Kconfig +endif + +menuconfig PIPES + bool "FIFO and named pipe drivers" + default n + ---help--- + FIFO and named pipe drivers. Standard interfaces are declared + in include/unistd.h +if PIPES +source drivers/pipes/Kconfig +endif + +menuconfig POWER + bool "Power management (PM) driver interfaces" + default n + ---help--- + Power management (PM) driver interfaces. These interfaces are used + to manage power usage of a platform by monitoring driver activity + and by placing drivers into reduce power usage modes when the + drivers are not active. +if POWER +source drivers/power/Kconfig +endif + +menuconfig SENSORS + bool "Sensors support" + default n + ---help--- + Drivers for various sensors +if SENSORS +source drivers/sensors/Kconfig +endif + +menuconfig SERCOMM_CONSOLE + bool "Osmocom-bb serial console" + default n + ---help--- + Sercomm is the transport used by osmocom-bb that runs on top of serial. + See http://bb.osmocom.org/trac/wiki/nuttx-bb/run for detailed the usage + of nuttx with sercomm. + + drivers/sercomm is only built if CONFIG_SERCOMM_CONSOLE in the NuttX + configuration file. If you attempt to build this driver without + osmocom-bb, you will get compilation errors because of header files + that are needed from the osmocom-bb. +if SERCOMM +source drivers/sercomm/Kconfig +endif + +menuconfig SERIAL + bool "Serial support" + default y + ---help--- + Front-end character drivers for chip-specific UARTs. This provide + some TTY-like functionality and are commonly used (but not required for) + the NuttX system console. See also include/nuttx/serial/serial.h +if SERIAL +source drivers/serial/Kconfig +endif + +menuconfig USBDEV + bool "USB device support" + default n + ---help--- + USB device drivers. See also include/nuttx/usb/usbdev.h +if USBDEV +source drivers/usbdev/Kconfig +endif + +menuconfig USBHOST + bool "USB Host support" + default n + ---help--- + USB host drivers. See also include/nuttx/usb/usbhost.h +if USBHOST +source drivers/usbhost/Kconfig +endif + +menuconfig WIRELESS + bool "Wireless support" + default n + ---help--- + Drivers for various wireless devices. +if WIRELESS +source drivers/wireless/Kconfig +endif diff --git a/nuttx/drivers/analog/Kconfig b/nuttx/drivers/analog/Kconfig index ae2bf31307..e3205d7cb7 100644 --- a/nuttx/drivers/analog/Kconfig +++ b/nuttx/drivers/analog/Kconfig @@ -2,3 +2,23 @@ # For a description of the syntax of this configuration file, # see misc/tools/kconfig-language.txt. # + +config CONFIG_ADC + bool "Analog Digital Convert" + default n + +config ADC_ADS125X + bool "TI ads1255/ads1256 support" + default n + depends on CONFIG_ADC + select SPI + +config CONFIG_DAC + bool "Digital Analog Convert" + default n + +config DAC_AD5410 + bool "AD5410 support" + default n + depends on CONFIG_DAC + select SPI diff --git a/nuttx/drivers/input/Kconfig b/nuttx/drivers/input/Kconfig index ae2bf31307..1303cfbd0f 100644 --- a/nuttx/drivers/input/Kconfig +++ b/nuttx/drivers/input/Kconfig @@ -2,3 +2,12 @@ # For a description of the syntax of this configuration file, # see misc/tools/kconfig-language.txt. # +config INPUT_TSC2007 + bool "TI TSC2007 touchscreen controller" + default n + select I2C + +config INPUT_ADS7843E + bool "TI ADS7843E touchscreen controller" + default n + select SPI diff --git a/nuttx/drivers/lcd/Kconfig b/nuttx/drivers/lcd/Kconfig index ae2bf31307..c69e0cac26 100644 --- a/nuttx/drivers/lcd/Kconfig +++ b/nuttx/drivers/lcd/Kconfig @@ -2,3 +2,27 @@ # For a description of the syntax of this configuration file, # see misc/tools/kconfig-language.txt. # + +config LCD_NOKIA6100 + bool "Nokia 6100 display support" + default n + ---help--- + nokia6100.c. Supports the Nokia 6100 display with either the Philips + PCF883 or the Epson S1D15G10 display controller. This LCD is used + with the Olimex LPC1766-STK (but has not been fully integrated). + +config LCD_P14201 + bool "Rit P1402 series display" + default n + ---help--- + p14201.c. Driver for RiT P14201 series display with SD1329 IC + controller. This OLED is used with older versions of the + TI/Luminary LM3S8962 Evaluation Kit. + +config LCD_UG9664HSWAG01 + bool "9664HSWAG01 OLED Display Module" + default n + ---help--- + ug-9664hswag01.c. OLED Display Module, UG-9664HSWAG01", Univision + Technology Inc. Used with the LPC Xpresso and Embedded Artists + base board. diff --git a/nuttx/drivers/mtd/Kconfig b/nuttx/drivers/mtd/Kconfig index ae2bf31307..bda5afa84d 100644 --- a/nuttx/drivers/mtd/Kconfig +++ b/nuttx/drivers/mtd/Kconfig @@ -2,3 +2,67 @@ # For a description of the syntax of this configuration file, # see misc/tools/kconfig-language.txt. # +config MTD_AT24XX + bool "I2C-based AT24XX eeprom" + default n + select I2C + +config AT24XX_SIZE + int "at24xx size(kByte)" + default 64 + depends on MTD_AT24XX + +config AT24XX_ADDR + hex "at24xx i2c address" + default 0x50 + depends on MTD_AT24XX + +config MTD_AT45DB + bool "SPI-based AT45DB flash" + default n + select SPI + +config AT45DB_FREQUENCY + int "at45db frequency" + default 1000000 + depends on MTD_AT45DB + +config AT45DB_PREWAIT + bool "enables higher performance write logic" + default y + depends on MTD_AT45DB + +config AT45DB_PWRSAVE + bool "enables power save" + default n + depends on MTD_AT45DB + +config MTD_MP25P + bool "SPI-based M25P1 falsh" + default n + select SPI + +config MP25P_SPIMODE + int "mp25p spi mode" + default 0 + depends on MTD_MP25P + +config MP25P_MANUFACTURER + hex "mp25p manufacturers ID" + default 0x20 + depends on MTD_MP25P + ---help--- + Various manufacturers may have produced the parts. 0x20 is the manufacturer ID + for the STMicro MP25x serial FLASH. If, for example, you are using the a Macronix + International MX25 serial FLASH, the correct manufacturer ID would be 0xc2. + +config MTD_RAMTRON + bool "SPI-based RAMTRON NVRAM Devices FM25V10" + default n + select SPI + ---help--- + SPI-based RAMTRON NVRAM Devices FM25V10 + +config MTD_RAM + bool "Memory bus ram" + default n diff --git a/nuttx/lib/Kconfig b/nuttx/lib/Kconfig index ae2bf31307..cc34d9db04 100644 --- a/nuttx/lib/Kconfig +++ b/nuttx/lib/Kconfig @@ -2,3 +2,74 @@ # For a description of the syntax of this configuration file, # see misc/tools/kconfig-language.txt. # +config HAVE_LIBM + bool "supports libm.a" + default n + +config NOPRINTF_FIELDWIDTH + bool "disable sprintf support fieldwidth" + default n + ---help--- + sprintf-related logic is a + little smaller if we do not support fieldwidthes + +config LIBC_FLOATINGPOINT + bool "enable float point in printf" + default n + ---help--- + By default, floating point + support in printf, sscanf, etc. is disabled. + +config ARCH_LOWPUTC + bool "low-level console output" + default "y" + ---help--- + architecture supports low-level, boot time console output + +config ENABLE_ARCH_OPTIMIZED_FUN + bool "enable arch optimized function" + default n + ---help--- + Allow for architecture optimized implementations + + The architecture can provide optimized versions of the + following to improve system performance + + The architecture may provide custom versions of certain + standard header files: + config ARCH_MATH_H, CONFIG_ARCH_STDBOOL_H, CONFIG_ARCH_STDINT_H + +if ENABLE_ARCH_OPTIMIZED_FUN +config ARCH_MEMCPY + bool "memcpy" + default n + +config ARCH_MEMCMP + bool "memcmp" + default n + +config ARCH_MEMMOVE + bool "memmove" + default n +config ARCH_MEMSET + bool "memset" + default n +config ARCH_STRCMP + bool "strcmp" + default n +config ARCH_STRCPY + bool "strcpy" + default n +config ARCH_STRNCPY + bool "strncpy" + default n +config ARCH_STRLEN + bool "strlen" + default n +config ARCH_STRNLEN + bool "strlen" + default n +config ARCH_BZERO + bool "bzero" + default n +endif diff --git a/nuttx/libxx/Kconfig b/nuttx/libxx/Kconfig index ae2bf31307..dad0444d1b 100644 --- a/nuttx/libxx/Kconfig +++ b/nuttx/libxx/Kconfig @@ -2,3 +2,18 @@ # For a description of the syntax of this configuration file, # see misc/tools/kconfig-language.txt. # +config HAVE_CXX + bool "have cxx" + default n + ---help--- + toolchain supports C++ and CXX, CXXFLAGS, and + COMPILEXX have been defined in the configurations Make.defs + file. + +config HAVE_CXXINITIALIZE + bool "have cxx initialize" + default n + ---help--- + The platform-specific logic includes support + for initialization of static C++ instances for this architecture + and for the selected toolchain (via up_cxxinitialize()). diff --git a/nuttx/sched/Kconfig b/nuttx/sched/Kconfig index ae2bf31307..c8fc0413de 100644 --- a/nuttx/sched/Kconfig +++ b/nuttx/sched/Kconfig @@ -2,3 +2,359 @@ # For a description of the syntax of this configuration file, # see misc/tools/kconfig-language.txt. # +config MM_REGIONS + int "number of memory regions" + default 1 + ---help--- + If the architecture includes multiple + regions of memory to allocate from, this specifies the + number of memory regions that the memory manager must + handle and enables the API mm_addregion(start, end); + +config MSEC_PER_TICK + int "tick timer" + default 10 + ---help--- + The default system timer is 100Hz + or MSEC_PER_TICK=10. This setting may be defined to + inform NuttX that the processor hardware is providing + system timer interrupts at some interrupt interval other + than 10 msec. + +config RR_INTERVAL + int "round robin timeslice" + default 0 + ---help--- + The round robin timeslice will be set + this number of milliseconds; Round robin scheduling can + be disabled by setting this value to zero. + +config SCHED_INSTRUMENTATION + bool "monitor system performance" + default n + ---help--- + enables instrumentation in + scheduler to monitor system performance + +config TASK_NAME_SIZE + int "task name size" + default 32 + ---help--- + Spcifies that maximum size of a + task name to save in the TCB. Useful if scheduler + instrumentation is selected. Set to zero to disable. + +config JULIAN_TIME + bool "Enables Julian time conversions" + default n + ---help--- + Enables Julian time conversions + +config START_YEAR + int "start year" + default 2010 + +config START_MONTH + int "start month" + default 1 + +config START_DAY + int "start day" + default 1 + +config DEV_CONSOLE + bool "enable /dev/console" + default y + ---help--- + Set if architecture-specific logic + provides /dev/console. Enables stdout, stderr, stdin. + +config DEV_LOWCONSOLE + bool "enable low-level serial console" + default n + ---help--- + Use the simple, low-level serial console + driver (minimul support) + +config MUTEX_TYPES: + bool "enable mutex types" + default n + ---help--- + Set to enable support for recursive and + errorcheck mutexes. Enables pthread_mutexattr_settype(). + +config PRIORITY_INHERITANCE + bool "enable priority inheritance " + default n + ---help--- + Set to enable support for priority + inheritance on mutexes and semaphores. + +config SEM_PREALLOCHOLDERS + int "pre alloc holders" + default 16 + depends on PRIORITY_INHERITANCE + ---help--- + This setting is only used if priority + inheritance is enabled. It defines the maximum number of + different threads (minus one) that can take counts on a + semaphore with priority inheritance support. This may be + set to zero if priority inheritance is disabled OR if you + are only using semaphores as mutexes (only one holder) OR + if no more than two threads participate using a counting + semaphore. + +config SEM_NNESTPRIO + int "maximum number of higher priority threads" + default 16 + depends on PRIORITY_INHERITANCE + ---help--- + If priority inheritance is enabled, + then this setting is the maximum number of higher priority + threads (minus 1) than can be waiting for another thread + to release a count on a semaphore. This value may be set + to zero if no more than one thread is expected to wait for + a semaphore. + +config FDCLONE_DISABLE + bool "disable clone all file descriptors" + default n + ---help--- + Disable cloning of all file descriptors + by task_create() when a new task is started. If set, all + files/drivers will appear to be closed in the new task. + +config FDCLONE_STDIO + bool "disable clone file descriptors without stdio" + default n + ---help--- + Disable cloning of all but the first + three file descriptors (stdin, stdout, stderr) by task_create() + when a new task is started. If set, all files/drivers will + appear to be closed in the new task except for stdin, stdout, + and stderr. + +config SDCLONE_DISABLE + bool "disable cloning of all socket" + default n + ---help--- + Disable cloning of all socket + desciptors by task_create() when a new task is started. If + set, all sockets will appear to be closed in the new task. + +config DISABLE_OS_API + bool "disable os api" + default n + ---help--- + The following can be used to disable categories of + APIs supported by the OS. If the compiler supports + weak functions, then it should not be necessary to + disable functions unless you want to restrict usage + of those APIs. + + There are certain dependency relationships in these + features. + + o mq_notify logic depends on signals to awaken tasks + waiting for queues to become full or empty. + o pthread_condtimedwait() depends on signals to wake + up waiting tasks. + +config DISABLE_CLOCK + bool "disable clock" + depends on DISABLE_OS_API + default n + +config DISABLE_POSIX_TIMERS + bool "disable posix timers" + depends on DISABLE_OS_API + default n + +config DISABLE_PTHREAD + bool "disable pthread" + depends on DISABLE_OS_API + default n + +config DISABLE_SIGNALS + bool "disable signals" + depends on DISABLE_OS_API + default n + +config DISABLE_MQUEUE + bool "disable mqueue" + depends on DISABLE_OS_API + default n + +config DISABLE_MOUNTPOINT + bool "disable mount point" + depends on DISABLE_OS_API + default n + +config DISABLE_ENVIRON + bool "disable environ" + depends on DISABLE_OS_API + default n + +config DISABLE_POLL + bool "disable poll" + depends on DISABLE_OS_API + default n + +comment "Sizes of configurable things (0 disables)" + +config MAX_TASKS + int "max tasks" + default 32 + ---help--- + The maximum number of simultaneously + active tasks. This value must be a power of two. + +config MAX_TASK_ARGS + int "max task args" + default 4 + ---help--- + This controls the maximum number of + of parameters that a task may receive (i.e., maxmum value + of 'argc') + +config NPTHREAD_KEYS + int "number pthread keys" + default 4 + ---help--- + The number of items of thread- + specific data that can be retained + +config NFILE_DESCRIPTORS + int "max file descriptors" + default 16 + ---help--- + The maximum number of file + descriptors (one for each open) + +config NFILE_STREAMS + int "max file streams" + default 16 + ---help--- + The maximum number of streams that + can be fopen'ed + +config NAME_MAX + int "name max" + default 32 + ---help--- + The maximum size of a file name. + +config STDIO_BUFFER_SIZE + int "stdio buffer size" + default 256 + ---help--- + Size of the buffer to allocate + on fopen. (Only if config _NFILE_STREAMS > 0) + +config NUNGET_CHARS + int "number get chars" + default 2 + ---help--- + Number of characters that can be + buffered by ungetc() (Only if config _NFILE_STREAMS > 0) + +config PREALLOC_MQ_MSGS + int "pre alloc mq_msgs" + default 32 + ---help--- + The number of pre-allocated message + structures. The system manages a pool of preallocated + message structures to minimize dynamic allocations + +config MQ_MAXMSGSIZE + int "mq max message size" + default 32 + ---help--- + Message structures are allocated with + a fixed payload size given by this settin (does not include + other message structure overhead. + +config MAX_WDOGPARMS + int "max watchdog parms" + default 4 + ---help--- + Maximum number of parameters that + can be passed to a watchdog handler + +config PREALLOC_WDOGS + int "pre alloc watchdogs" + default 32 + ---help--- + The number of pre-allocated watchdog + structures. The system manages a pool of preallocated + watchdog structures to minimize dynamic allocations + +config PREALLOC_TIMERS + int "pre alloc timers" + default 8 + ---help--- + The number of pre-allocated POSIX + timer structures. The system manages a pool of preallocated + timer structures to minimize dynamic allocations. Set to + zero for all dynamic allocations. + + +comment "Stack and heap information" + +config BOOT_RUNFROMFLASH + bool "boot run from flash" + default n + ---help--- + Some configurations support XIP + operation from FLASH but must copy initialized .data sections to RAM. + (should also be =n for the LPC17xx which always runs from flash) + +config BOOT_COPYTORAM + bool "boot copy to ram" + default n + ---help--- + Some configurations boot in FLASH + but copy themselves entirely into RAM for better performance. + +config CUSTOM_STACK + bool "enable custom stack" + default n + ---help--- + The up_ implementation will handle + all stack operations outside of the nuttx model. + +config STACK_POINTER + hex "" + default 0 + ---help--- + The initial stack pointer (arm7tdmi only) + +config IDLETHREAD_STACKSIZE + int "idle thread stack size" + default 1024 + ---help--- + The size of the initial stack. + This is the thread that (1) performs the inital boot of the system up + to the point where user_start() is spawned, and (2) there after is the + IDLE thread that executes only when there is no other thread ready to + run. + +config USERMAIN_STACKSIZE + int "main thread stack size" + default 2048 + ---help--- + The size of the stack to allocate + for the main user thread that begins at the user_start() entry point. + +config PTHREAD_STACK_MIN + int "minimum thrad stack size" + default 256 + ---help--- + Minimum pthread stack size + +config PTHREAD_STACK_DEFAULT + int "default stack size" + default 2048 + ---help--- + Default pthread stack size +