############################################################################ # configs/pic32-starterkit/ostest/defconfig # # Copyright (C) 2011 Gregory Nutt. All rights reserved. # Author: Gregory Nutt # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # 1. Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # 2. Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in # the documentation and/or other materials provided with the # distribution. # 3. Neither the name NuttX nor the names of its contributors may be # used to endorse or promote products derived from this software # without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS # FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE # COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, # BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS # OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED # AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN # ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE # POSSIBILITY OF SUCH DAMAGE. # ############################################################################ # # architecture selection # # CONFIG_ARCH - identifies the arch subdirectory and, hence, the # processor architecture. # CONFIG_ARCH_family - for use in C code. This identifies the # particular chip family that the architecture is implemented # in. # CONFIG_ARCH_architecture - for use in C code. This identifies the # specific architecture within the chip family. # CONFIG_ARCH_CHIP - Identifies the arch/*/chip subdirectory # CONFIG_ARCH_CHIP_name - For use in C code # CONFIG_ARCH_BOARD - identifies the configs subdirectory and, hence, # the board that supports the particular chip or SoC. # CONFIG_ARCH_BOARD_name - for use in C code # CONFIG_ENDIAN_BIG - define if big endian (default is little endian) # NOTE: The PIC32MX is always little endian. # CONFIG_BOARD_LOOPSPERMSEC. You simply use a stop watch to measure # the 100 second delay then adjust CONFIG_BOARD_LOOPSPERMSEC until # the delay actually is 100 seconds. # CONFIG_DRAM_SIZE - Describes the installed DRAM. # CONFIG_DRAM_START - The start address of DRAM (physical) # CONFIG_DRAM_END - Last address+1 of installed RAM # CONFIG_ARCH_NOINTC - define if the architecture does not # support an interrupt controller or otherwise cannot support # APIs like up_enable_irq() and up_disable_irq(). # CONFIG_ARCH_VECNOTIRQ - Usually the interrupt vector number provided # to interfaces like irq_attach() and irq_detach are the same as IRQ # numbers that are provied to IRQ management functions like # up_enable_irq() and up_disable_irq(). But that is not true for all # interrupt controller implementations. For example, the PIC32MX # interrupt controller manages interrupt sources that have a many-to-one # relationship to interrupt vectors. In such cases, CONFIG_ARCH_VECNOTIRQ # must defined so that the OS logic will know not to assume it can use # a vector number to enable or disable interrupts. # CONFIG_ARCH_IRQPRIO - The PIC32MX supports interrupt prioritization # CONFIG_ARCH_INTERRUPTSTACK - This architecture supports an interrupt # stack. If defined, this symbol is the size of the interrupt # stack in bytes. If not defined, the user task stacks will be # used during interrupt handling. # CONFIG_ARCH_STACKDUMP - Do stack dumps after assertions # CONFIG_ARCH_BOOTLOADER - Set if you are using a bootloader. # CONFIG_ARCH_LEDS - Use LEDs to show state. Unique to board architecture. # CONFIG_ARCH_BUTTONS - Enable support for buttons. Unique to board architecture. # CONFIG_ARCH_CALIBRATION - Enables some build in instrumentation that # cause a 100 second delay during boot-up. This 100 second delay # serves no purpose other than it allows you to calibrate # CONFIG_ARCH_DMA - Support DMA initialization # CONFIG_ARCH=mips CONFIG_ARCH_MIPS=y CONFIG_ARCH_MIPS32=y CONFIG_ARCH_CHIP=pic32mx CONFIG_ARCH_CHIP_PIC32MX795F512L=y CONFIG_ARCH_BOARD=pic32-starterkit CONFIG_ARCH_BOARD_PIC32_STARTERKIT=y CONFIG_BOARD_LOOPSPERMSEC=5560 CONFIG_DRAM_SIZE=(128*1024) CONFIG_DRAM_START=0xa0000000 CONFIG_DRAM_END=(CONFIG_DRAM_START+CONFIG_DRAM_SIZE) CONFIG_ARCH_NOINTC=n CONFIG_ARCH_VECNOTIRQ=y CONFIG_ARCH_IRQPRIO=y CONFIG_ARCH_INTERRUPTSTACK=n CONFIG_ARCH_STACKDUMP=y CONFIG_ARCH_BOOTLOADER=n CONFIG_ARCH_LEDS=y CONFIG_ARCH_BUTTONS=n CONFIG_ARCH_CALIBRATION=n CONFIG_ARCH_DMA=n # # Enable support for RAM-based functions # (If selected, then modifications are needed in ld.script as well) # CONFIG_PIC32MX_RAMFUNCS=n # # Identify toolchain and linker options # CONFIG_PIC32MX_MICROCHIPW=n CONFIG_PIC32MX_MICROCHIPL=n CONFIG_PIC32MX_MICROCHIPW_LITE=y CONFIG_PIC32MX_MICROCHIPL_LITE=n # # Individual subsystems can be enabled: # CONFIG_PIC32MX_WDT=n CONFIG_PIC32MX_RTCC=n CONFIG_PIC32MX_TIMER1=n CONFIG_PIC32MX_TIMER2=n CONFIG_PIC32MX_TIMER3=n CONFIG_PIC32MX_TIMER4=n CONFIG_PIC32MX_TIMER5=n CONFIG_PIC32MX_IC1=n CONFIG_PIC32MX_IC2=n CONFIG_PIC32MX_IC3=n CONFIG_PIC32MX_IC4=n CONFIG_PIC32MX_IC5=n CONFIG_PIC32MX_OC1=n CONFIG_PIC32MX_OC2=n CONFIG_PIC32MX_OC3=n CONFIG_PIC32MX_OC4=n CONFIG_PIC32MX_OC5=n CONFIG_PIC32MX_I2C1=n CONFIG_PIC32MX_I2C2=n CONFIG_PIC32MX_SPI2=n CONFIG_PIC32MX_UART1=n CONFIG_PIC32MX_UART2=y CONFIG_PIC32MX_UART3=n CONFIG_PIC32MX_UART4=n CONFIG_PIC32MX_UART5=n CONFIG_PIC32MX_UART6=n CONFIG_PIC32MX_PMP=n CONFIG_PIC32MX_ADC=n CONFIG_PIC32MX_CVR=n CONFIG_PIC32MX_CM1=n CONFIG_PIC32MX_CM2=n CONFIG_PIC32MX_OSC=y CONFIG_PIC32MX_DDP=n CONFIG_PIC32MX_FLASH=n CONFIG_PIC32MX_BMX=n CONFIG_PIC32MX_DMA=n CONFIG_PIC32MX_CHE=n CONFIG_PIC32MX_USBDEV=n CONFIG_PIC32MX_USBHOST=n CONFIG_PIC32MX_CAN1=n CONFIG_PIC32MX_CAN2=n CONFIG_PIC32MX_ETHERNET=n CONFIG_PIC32MX_IOPORTA=y CONFIG_PIC32MX_IOPORTB=y CONFIG_PIC32MX_IOPORTC=y CONFIG_PIC32MX_IOPORTD=y CONFIG_PIC32MX_IOPORTE=y CONFIG_PIC32MX_IOPORTF=y CONFIG_PIC32MX_IOPORTG=y # # PIC32MX Configuration Settings # # DEVCFG0: # CONFIG_PIC32MX_DEBUGGER - Background Debugger Enable. Default 3 (disabled). The # value 2 enables. # CONFIG_PIC32MX_ICESEL - In-Circuit Emulator/Debugger Communication Channel Select # Default 1 (PG2) # CONFIG_PIC32MX_PROGFLASHWP - Program FLASH write protect. Default 0xff (disabled) # CONFIG_PIC32MX_BOOTFLASHWP - Default 1 (disabled) # CONFIG_PIC32MX_CODEWP - Default 1 (disabled) # DEVCFG1: (All settings determined by selections in board.h) # DEVCFG2: (All settings determined by selections in board.h) # DEVCFG3: # CONFIG_PIC32MX_USBIDO - USB USBID Selection. Default 1 if USB enabled # (USBID pin is controlled by the USB module), but 0 (GPIO) otherwise. # CONFIG_PIC32MX_VBUSIO - USB VBUSON Selection (Default 1 if USB enabled # (VBUSON pin is controlled by the USB module, but 0 (GPIO) otherwise. # CONFIG_PIC32MX_WDENABLE - Enabled watchdog on power up. Default 0 (watchdog # can be enabled later by software). # CONFIG_PIC32MX_DEBUGGER=2 CONFIG_PIC32MX_ICESEL=1 # # PIC32MX specific serial device driver settings # # CONFIG_UARTn_SERIAL_CONSOLE - selects the UARTn for the # console and ttys0 (default is the UART1). # CONFIG_UARTn_RXBUFSIZE - Characters are buffered as received. # This specific the size of the receive buffer # CONFIG_UARTn_TXBUFSIZE - Characters are buffered before # being sent. This specific the size of the transmit buffer # CONFIG_UARTn_BAUD - The configure BAUD of the UART. Must be # CONFIG_UARTn_BITS - The number of bits. Must be either 7 or 8. # CONFIG_UARTn_PARTIY - 0=no parity, 1=odd parity, 2=even parity # CONFIG_UARTn_2STOP - Two stop bits # CONFIG_UART1_SERIAL_CONSOLE=n CONFIG_UART2_SERIAL_CONSOLE=y CONFIG_UART3_SERIAL_CONSOLE=n CONFIG_UART4_SERIAL_CONSOLE=n CONFIG_UART5_SERIAL_CONSOLE=n CONFIG_UART6_SERIAL_CONSOLE=n CONFIG_UART1_TXBUFSIZE=256 CONFIG_UART2_TXBUFSIZE=256 CONFIG_UART3_TXBUFSIZE=256 CONFIG_UART4_TXBUFSIZE=256 CONFIG_UART5_TXBUFSIZE=256 CONFIG_UART6_TXBUFSIZE=256 CONFIG_UART1_RXBUFSIZE=256 CONFIG_UART2_RXBUFSIZE=256 CONFIG_UART3_RXBUFSIZE=256 CONFIG_UART4_RXBUFSIZE=256 CONFIG_UART5_RXBUFSIZE=256 CONFIG_UART6_RXBUFSIZE=256 CONFIG_UART1_BAUD=115200 CONFIG_UART2_BAUD=115200 CONFIG_UART3_BAUD=115200 CONFIG_UART4_BAUD=115200 CONFIG_UART5_BAUD=115200 CONFIG_UART6_BAUD=115200 CONFIG_UART1_BITS=8 CONFIG_UART2_BITS=8 CONFIG_UART3_BITS=8 CONFIG_UART4_BITS=8 CONFIG_UART5_BITS=8 CONFIG_UART6_BITS=8 CONFIG_UART1_PARITY=0 CONFIG_UART2_PARITY=0 CONFIG_UART3_PARITY=0 CONFIG_UART4_PARITY=0 CONFIG_UART5_PARITY=0 CONFIG_UART6_PARITY=0 CONFIG_UART1_2STOP=0 CONFIG_UART2_2STOP=0 CONFIG_UART3_2STOP=0 CONFIG_UART4_2STOP=0 CONFIG_UART5_2STOP=0 CONFIG_UART6_2STOP=0 # # PIC32MX specific PHY/Ethernet device driver settings # # CONFIG_PHY_KS8721 - Selects the Micrel KS8721 PHY # CONFIG_PHY_DP83848C - Selects the National Semiconduction DP83848C PHY # CONFIG_PHY_LAN8720 - Selects the SMSC LAN8720 PHY # CONFIG_PHY_AUTONEG - Enable auto-negotion # CONFIG_PHY_SPEED100 - Select 100Mbit vs. 10Mbit speed. # CONFIG_PHY_FDUPLEX - Select full (vs. half) duplex # CONFIG_NET_NTXDESC - Configured number of Tx descriptors. Default: 2 # CONFIG_NET_NRXDESC - Configured number of Rx descriptors. Default: 4 # CONFIG_NET_PRIORITY - Ethernet interrupt priority. The is default is # the higest priority. # CONFIG_NET_WOL - Enable Wake-up on Lan (not fully implemented). # CONFIG_NET_DUMPPACKET - Dump all received and transmitted packets. # Also needs CONFIG_DEBUG. # CONFIG_NET_REGDEBUG - Enabled low level register debug. Also needs # CONFIG_DEBUG. # CONFIG_NET_HASH - Enable receipt of near-perfect match frames. # CONFIG_NET_MULTICAST - Enable receipt of multicast (and unicast) frames. # Automatically set if CONFIG_NET_IGMP is selected. # # Related DEVCFG3 Configuration Settings: # CONFIG_PIC32MX_FETHIO: Ethernet I/O Pin Selection bit: # 1 = Default Ethernet I/O Pins # 0 = Alternate Ethernet I/O Pins # CONFIG_PIC32MX_FMIIEN: Ethernet MII Enable bit # 1 = MII enabled # 0 = RMII enabled # CONFIG_PHY_KS8721=n CONFIG_PHY_DP83848C=y CONFIG_PHY_LAN8720=n CONFIG_PHY_AUTONEG=y CONFIG_PHY_SPEED100=n CONFIG_PHY_FDUPLEX=y CONFIG_NET_NTXDESC=7 CONFIG_NET_NRXDESC=7 CONFIG_NET_REGDEBUG=n # # General build options # # CONFIG_RRLOAD_BINARY - make the rrload binary format used with # BSPs from www.ridgerun.com using the tools/mkimage.sh script # CONFIG_INTELHEX_BINARY - make the Intel HEX binary format # used with many different loaders using the GNU objcopy program # Should not be selected if you are not using the GNU toolchain. # CONFIG_MOTOROLA_SREC - make the Motorola S-Record binary format # used with many different loaders using the GNU objcopy program # Should not be selected if you are not using the GNU toolchain. # CONFIG_RAW_BINARY - make a raw binary format file used with many # different loaders using the GNU objcopy program. This option # should not be selected if you are not using the GNU toolchain. # CONFIG_HAVE_LIBM - toolchain supports libm.a # CONFIG_RRLOAD_BINARY=n CONFIG_INTELHEX_BINARY=y CONFIG_MOTOROLA_SREC=n CONFIG_RAW_BINARY=n CONFIG_HAVE_LIBM=n # # General OS setup # # CONFIG_APPS_DIR - Identifies the relative path to the directory # that builds the application to link with NuttX. Default: ../apps # CONFIG_DEBUG - enables built-in debug options # CONFIG_DEBUG_VERBOSE - enables verbose debug output # CONFIG_DEBUG_SYMBOLS - build without optimization and with # debug symbols (needed for use with a debugger). # CONFIG_MM_REGIONS - 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_ARCH_LOWPUTC - architecture supports low-level, boot # time console output # CONFIG_MSEC_PER_TICK - 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 - 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 - enables instrumentation in # scheduler to monitor system performance # CONFIG_TASK_NAME_SIZE - 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_START_YEAR, CONFIG_START_MONTH, CONFIG_START_DAY - # Used to initialize the internal time logic. # CONFIG_GREGORIAN_TIME - Enables Gregorian time conversions. # You would only need this if you are concerned about accurate # time conversions in the past or in the distant future. # CONFIG_JULIAN_TIME - Enables Julian time conversions. You # would only need this if you are concerned about accurate # time conversion in the distand past. You must also define # CONFIG_GREGORIAN_TIME in order to use Julian time. # CONFIG_DEV_CONSOLE - Set if architecture-specific logic # provides /dev/console. Enables stdout, stderr, stdin. # CONFIG_DEV_LOWCONSOLE - Use the simple, low-level serial console # driver (minimul support) # CONFIG_MUTEX_TYPES: Set to enable support for recursive and # errorcheck mutexes. Enables pthread_mutexattr_settype(). # CONFIG_PRIORITY_INHERITANCE : Set to enable support for priority # inheritance on mutexes and semaphores. # CONFIG_SEM_PREALLOCHOLDERS: 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. 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. 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. 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. 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_SCHED_WORKQUEUE. Create a dedicated "worker" thread to # handle delayed processing from interrupt handlers. This feature # is required for some drivers but, if there are not complaints, # can be safely disabled. The worker thread also performs # garbage collection -- completing any delayed memory deallocations # from interrupt handlers. If the worker thread is disabled, # then that clean will be performed by the IDLE thread instead # (which runs at the lowest of priority and may not be appropriate # if memory reclamation is of high priority). If CONFIG_SCHED_WORKQUEUE # is enabled, then the following options can also be used: # CONFIG_SCHED_WORKPRIORITY - The execution priority of the worker # thread. Default: 50 # CONFIG_SCHED_WORKPERIOD - How often the worker thread checks for # work in units of microseconds. Default: 50*1000 (50 MS). # CONFIG_SCHED_WORKSTACKSIZE - The stack size allocated for the worker # thread. Default: CONFIG_IDLETHREAD_STACKSIZE. # CONFIG_SIG_SIGWORK - The signal number that will be used to wake-up # the worker thread. Default: 4 # #CONFIG_APPS_DIR= CONFIG_DEBUG=n CONFIG_DEBUG_VERBOSE=n CONFIG_DEBUG_SYMBOLS=n CONFIG_DEBUG_SCHED=n CONFIG_MM_REGIONS=1 CONFIG_ARCH_LOWPUTC=y CONFIG_RR_INTERVAL=200 CONFIG_SCHED_INSTRUMENTATION=n CONFIG_TASK_NAME_SIZE=0 CONFIG_START_YEAR=2011 CONFIG_START_MONTH=4 CONFIG_START_DAY=8 CONFIG_GREGORIAN_TIME=n CONFIG_JULIAN_TIME=n CONFIG_DEV_CONSOLE=y CONFIG_DEV_LOWCONSOLE=y CONFIG_MUTEX_TYPES=n CONFIG_PRIORITY_INHERITANCE=n CONFIG_SEM_PREALLOCHOLDERS=0 CONFIG_SEM_NNESTPRIO=0 CONFIG_FDCLONE_DISABLE=n CONFIG_FDCLONE_STDIO=n CONFIG_SDCLONE_DISABLE=y CONFIG_SCHED_WORKQUEUE=n CONFIG_SCHED_WORKPRIORITY=50 CONFIG_SCHED_WORKPERIOD=(50*1000) CONFIG_SCHED_WORKSTACKSIZE=1024 CONFIG_SIG_SIGWORK=4 # # Settings for nxflat # CONFIG_NXFLAT. Enable support for the NXFLAT binary format. # This format will support execution of NuttX binaries located # in a ROMFS filesystem (see examples/nxflat). # CONFIG_NXFLAT_DUMPBUFFER. Dump a most buffers that NXFFLAT deals # with. CONFIG_DEBUG, CONFIG_DEBUG_VERBOSE, and # CONFIG_DEBUG_BINFMT have to be defined or # CONFIG_NXFLAT_DUMPBUFFER does nothing. # CONFIG_SYMTAB_ORDEREDBYNAME. Select if the system symbol table # is ordered by symbol name # CONFIG_NXFLAT=n CONFIG_NXFLAT_DUMPBUFFER=n CONFIG_SYMTAB_ORDEREDBYNAME=y # # 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=n CONFIG_DISABLE_POSIX_TIMERS=n CONFIG_DISABLE_PTHREAD=n CONFIG_DISABLE_SIGNALS=n CONFIG_DISABLE_MQUEUE=n CONFIG_DISABLE_MOUNTPOINT=y CONFIG_DISABLE_ENVIRON=y CONFIG_DISABLE_POLL=y # # Misc libc settings # # CONFIG_NOPRINTF_FIELDWIDTH - sprintf-related logic is a # little smaller if we do not support fieldwidthes # CONFIG_NOPRINTF_FIELDWIDTH=n # # Allow for architecture optimized implementations # # The architecture can provide optimized versions of the # following to improve system performance # CONFIG_ARCH_MEMCPY=n CONFIG_ARCH_MEMCMP=n CONFIG_ARCH_MEMMOVE=n CONFIG_ARCH_MEMSET=n CONFIG_ARCH_STRCMP=n CONFIG_ARCH_STRCPY=n CONFIG_ARCH_STRNCPY=n CONFIG_ARCH_STRLEN=n CONFIG_ARCH_STRNLEN=n CONFIG_ARCH_BZERO=n # # Sizes of configurable things (0 disables) # # CONFIG_MAX_TASKS - The maximum number of simultaneously # active tasks. This value must be a power of two. # CONFIG_MAX_TASK_ARGS - This controls the maximum number of # of parameters that a task may receive (i.e., maxmum value # of 'argc') # CONFIG_NPTHREAD_KEYS - The number of items of thread- # specific data that can be retained # CONFIG_NFILE_DESCRIPTORS - The maximum number of file # descriptors (one for each open) # CONFIG_NFILE_STREAMS - The maximum number of streams that # can be fopen'ed # CONFIG_NAME_MAX - The maximum size of a file name. # CONFIG_STDIO_BUFFER_SIZE - Size of the buffer to allocate # on fopen. (Only if CONFIG_NFILE_STREAMS > 0) # CONFIG_NUNGET_CHARS - Number of characters that can be # buffered by ungetc() (Only if CONFIG_NFILE_STREAMS > 0) # CONFIG_PREALLOC_MQ_MSGS - The number of pre-allocated message # structures. The system manages a pool of preallocated # message structures to minimize dynamic allocations # CONFIG_MQ_MAXMSGSIZE - Message structures are allocated with # a fixed payload size given by this settin (does not include # other message structure overhead. # CONFIG_MAX_WDOGPARMS - Maximum number of parameters that # can be passed to a watchdog handler # CONFIG_PREALLOC_WDOGS - The number of pre-allocated watchdog # structures. The system manages a pool of preallocated # watchdog structures to minimize dynamic allocations # CONFIG_PREALLOC_TIMERS - 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. # CONFIG_MAX_TASKS=16 CONFIG_MAX_TASK_ARGS=4 CONFIG_NPTHREAD_KEYS=4 CONFIG_NFILE_DESCRIPTORS=8 CONFIG_NFILE_STREAMS=8 CONFIG_NAME_MAX=32 CONFIG_STDIO_BUFFER_SIZE=256 CONFIG_NUNGET_CHARS=2 CONFIG_PREALLOC_MQ_MSGS=4 CONFIG_MQ_MAXMSGSIZE=32 CONFIG_MAX_WDOGPARMS=2 CONFIG_PREALLOC_WDOGS=4 CONFIG_PREALLOC_TIMERS=4 # # Filesystem configuration # # CONFIG_FS_FAT - Enable FAT filesystem support # CONFIG_FAT_SECTORSIZE - Max supported sector size # CONFIG_FS_ROMFS - Enable ROMFS filesystem support # CONFIG_FS_FAT=n CONFIG_FS_ROMFS=n # # SPI-based MMC/SD driver # # CONFIG_MMCSD_NSLOTS # Number of MMC/SD slots supported by the driver # CONFIG_MMCSD_READONLY # Provide read-only access (default is read/write) # CONFIG_MMCSD_SPICLOCK - Maximum SPI clock to drive MMC/SD card. # Default is 20MHz. # CONFIG_MMCSD_NSLOTS=1 CONFIG_MMCSD_READONLY=n CONFIG_MMCSD_SPICLOCK=12500000 # # Block driver buffering # # CONFIG_FS_READAHEAD # Enable read-ahead buffering # CONFIG_FS_WRITEBUFFER # Enable write buffering # CONFIG_FS_READAHEAD=n CONFIG_FS_WRITEBUFFER=n # # SDIO-based MMC/SD driver # # CONFIG_SDIO_DMA # SDIO driver supports DMA # CONFIG_MMCSD_MMCSUPPORT # Enable support for MMC cards # CONFIG_MMCSD_HAVECARDDETECT # SDIO driver card detection is 100% accurate # CONFIG_SDIO_DMA=n CONFIG_MMCSD_MMCSUPPORT=n CONFIG_MMCSD_HAVECARDDETECT=n # # TCP/IP and UDP support via uIP # CONFIG_NET - Enable or disable all network features # CONFIG_NET_NOINTS -- CONFIG_NET_NOINT indicates that uIP not called from # the interrupt level. If CONFIG_NET_NOINTS is defined, critical sections # will be managed with semaphores; Otherwise, it assumed that uIP will be # called from interrupt level handling and critical sections will be # managed by enabling and disabling interrupts. # CONFIG_NET_MULTIBUFFER - Traditionally, uIP has used a single buffer # for all incoming and outgoing traffic. If this configuration is # selected, then the driver can manage multiple I/O buffers and can, # for example, be filling one input buffer while sending another # output buffer. Or, as another example, the driver may support # queuing of concurrent input/ouput and output transfers for better # performance. # CONFIG_NET_IPv6 - Build in support for IPv6 # CONFIG_NSOCKET_DESCRIPTORS - Maximum number of socket descriptors per task/thread. # CONFIG_NET_SOCKOPTS - Enable or disable support for socket options # CONFIG_NET_BUFSIZE - uIP buffer size # CONFIG_NET_TCP - TCP support on or off # CONFIG_NET_TCP_CONNS - Maximum number of TCP connections (all tasks) # CONFIG_NET_TCP_READAHEAD_BUFSIZE - Size of TCP read-ahead buffers # CONFIG_NET_NTCP_READAHEAD_BUFFERS - Number of TCP read-ahead buffers (may be zero) # CONFIG_NET_TCPBACKLOG - Incoming connections pend in a backlog until # accept() is called. The size of the backlog is selected when listen() is called. # CONFIG_NET_MAX_LISTENPORTS - Maximum number of listening TCP ports (all tasks) # CONFIG_NET_UDP - UDP support on or off # CONFIG_NET_UDP_CHECKSUMS - UDP checksums on or off # CONFIG_NET_UDP_CONNS - The maximum amount of concurrent UDP connections # CONFIG_NET_ICMP - ICMP ping response support on or off # CONFIG_NET_ICMP_PING - ICMP ping request support on or off # CONFIG_NET_PINGADDRCONF - Use "ping" packet for setting IP address # CONFIG_NET_STATISTICS - uIP statistics on or off # CONFIG_NET_RECEIVE_WINDOW - The size of the advertised receiver's window # CONFIG_NET_ARPTAB_SIZE - The size of the ARP table # CONFIG_NET_BROADCAST - Broadcast support # CONFIG_NET_FWCACHE_SIZE - number of packets to remember when looking for duplicates # CONFIG_NET=n CONFIG_NET_NOINTS=n CONFIG_NET_MULTIBUFFER=y CONFIG_NET_IPv6=n CONFIG_NSOCKET_DESCRIPTORS=0 CONFIG_NET_SOCKOPTS=y CONFIG_NET_BUFSIZE=420 CONFIG_NET_TCP=n CONFIG_NET_TCP_CONNS=40 CONFIG_NET_MAX_LISTENPORTS=40 CONFIG_NET_UDP=n CONFIG_NET_UDP_CHECKSUMS=y #CONFIG_NET_UDP_CONNS=10 CONFIG_NET_ICMP=n CONFIG_NET_ICMP_PING=n #CONFIG_NET_PINGADDRCONF=0 CONFIG_NET_STATISTICS=y #CONFIG_NET_RECEIVE_WINDOW= #CONFIG_NET_ARPTAB_SIZE=8 CONFIG_NET_BROADCAST=n #CONFIG_NET_FWCACHE_SIZE=2 # # UIP Network Utilities # CONFIG_NET_DHCP_LIGHT - Reduces size of DHCP # CONFIG_NET_RESOLV_ENTRIES - Number of resolver entries # CONFIG_NET_DHCP_LIGHT=n CONFIG_NET_RESOLV_ENTRIES=4 # # USB Device Configuration # # CONFIG_USBDEV # Enables USB device support # CONFIG_USBDEV_ISOCHRONOUS # Build in extra support for isochronous endpoints # CONFIG_USBDEV_DUALSPEED # Hardware handles high and full speed operation (USB 2.0) # CONFIG_USBDEV_SELFPOWERED # Will cause USB features to indicate that the device is # self-powered # CONFIG_USBDEV_MAXPOWER # Maximum power consumption in mA # CONFIG_USBDEV_TRACE # Enables USB tracing for debug # CONFIG_USBDEV_TRACE_NRECORDS # Number of trace entries to remember # CONFIG_USBDEV=n CONFIG_USBDEV_ISOCHRONOUS=n CONFIG_USBDEV_DUALSPEED=n CONFIG_USBDEV_SELFPOWERED=y CONFIG_USBDEV_REMOTEWAKEUP=n CONFIG_USBDEV_MAXPOWER=100 CONFIG_USBDEV_TRACE=n CONFIG_USBDEV_TRACE_NRECORDS=128 # # USB Serial Device Configuration # # CONFIG_USBSER # Enable compilation of the USB serial driver # CONFIG_USBSER_EPINTIN # The logical 7-bit address of a hardware endpoint that supports # interrupt IN operation # CONFIG_USBSER_EPBULKOUT # The logical 7-bit address of a hardware endpoint that supports # bulk OUT operation # CONFIG_USBSER_EPBULKIN # The logical 7-bit address of a hardware endpoint that supports # bulk IN operation # # CONFIG_USBSER_NWRREQS and CONFIG_USBSER_NRDREQS # The number of write/read requests that can be in flight # CONFIG_USBSER_VENDORID and CONFIG_USBSER_VENDORSTR # The vendor ID code/string # CONFIG_USBSER_PRODUCTID and CONFIG_USBSER_PRODUCTSTR # The product ID code/string # CONFIG_USBSER_RXBUFSIZE and CONFIG_USBSER_TXBUFSIZE # Size of the serial receive/transmit buffers # CONFIG_USBSER=n CONFIG_USBSER_EPINTIN=1 CONFIG_USBSER_EPBULKOUT=2 CONFIG_USBSER_EPBULKIN=5 CONFIG_USBSER_NWRREQS=4 CONFIG_USBSER_NRDREQS=4 CONFIG_USBSER_VENDORID=0x067b CONFIG_USBSER_PRODUCTID=0x2303 CONFIG_USBSER_VENDORSTR="Nuttx" CONFIG_USBSER_PRODUCTSTR="USBdev Serial" CONFIG_USBSER_RXBUFSIZE=512 CONFIG_USBSER_TXBUFSIZE=512 # # USB Storage Device Configuration # # CONFIG_USBMSC # Enable compilation of the USB storage driver # CONFIG_USBMSC_EP0MAXPACKET # Max packet size for endpoint 0 # CONFIG_USBMSC_EPBULKOUT and CONFIG_USBMSC_EPBULKIN # The logical 7-bit address of a hardware endpoints that support # bulk OUT and IN operations # CONFIG_USBMSC_NWRREQS and CONFIG_USBMSC_NRDREQS # The number of write/read requests that can be in flight # CONFIG_USBMSC_BULKINREQLEN and CONFIG_USBMSC_BULKOUTREQLEN # The size of the buffer in each write/read request. This # value needs to be at least as large as the endpoint # maxpacket and ideally as large as a block device sector. # CONFIG_USBMSC_VENDORID and CONFIG_USBMSC_VENDORSTR # The vendor ID code/string # CONFIG_USBMSC_PRODUCTID and CONFIG_USBMSC_PRODUCTSTR # The product ID code/string # CONFIG_USBMSC_REMOVABLE # Select if the media is removable # CONFIG_USBMSC=n CONFIG_USBMSC_EP0MAXPACKET=64 CONFIG_USBMSC_EPBULKOUT=2 CONFIG_USBMSC_EPBULKIN=5 CONFIG_USBMSC_NRDREQS=2 CONFIG_USBMSC_NWRREQS=2 CONFIG_USBMSC_BULKINREQLEN=256 CONFIG_USBMSC_BULKOUTREQLEN=256 CONFIG_USBMSC_VENDORID=0x584e CONFIG_USBMSC_VENDORSTR="NuttX" CONFIG_USBMSC_PRODUCTID=0x5342 CONFIG_USBMSC_PRODUCTSTR="USBdev Storage" CONFIG_USBMSC_VERSIONNO=0x0399 CONFIG_USBMSC_REMOVABLE=y # # Settings for examples/uip # CONFIG_EXAMPLE_UIP_IPADDR=(10<<24|0<<16|0<<8|2) CONFIG_EXAMPLE_UIP_DRIPADDR=(10<<24|0<<16|0<<8|1) CONFIG_EXAMPLE_UIP_NETMASK=(255<<24|255<<16|255<<8|0) CONFIG_EXAMPLE_UIP_DHCPC=n # # Settings for examples/nettest # # CONFIG_EXAMPLE_NETTEST_SERVER - The target board can act # as either the client side or server side of the test # CONFIG_EXAMPLE_NETTEST_PERFORMANCE - If set, then the # client side simply receives messages forever, allowing # measurement of throughput # CONFIG_EXAMPLE_NETTEST_NOMAC - Set if the hardware has # no MAC address; one will be assigned # CONFIG_EXAMPLE_NETTEST_IPADDR - Target board IP address # CONFIG_EXAMPLE_NETTEST_DRIPADDR - Default router address # CONFIG_EXAMPLE_NETTEST_NETMASK - Network mask # CONFIG_EXAMPLE_NETTEST_CLIENTIP - IP address of the # client side of the test (may be target or host) # CONFIG_EXAMPLE_NETTEST_SERVER=n CONFIG_EXAMPLE_NETTEST_PERFORMANCE=n CONFIG_EXAMPLE_NETTEST_NOMAC=y CONFIG_EXAMPLE_NETTEST_IPADDR=(10<<24|0<<16|0<<8|2) CONFIG_EXAMPLE_NETTEST_DRIPADDR=(10<<24|0<<16|0<<8|1) CONFIG_EXAMPLE_NETTEST_NETMASK=(255<<24|255<<16|255<<8|0) CONFIG_EXAMPLE_NETTEST_CLIENTIP=(10<<24|0<<16|0<<8|1) # # Settings for examples/ostest # CONFIG_EXAMPLES_OSTEST_LOOPS=1 CONFIG_EXAMPLES_OSTEST_STACKSIZE=2048 CONFIG_EXAMPLES_OSTEST_NBARRIER_THREADS=3 # # Settings for apps/nshlib # # CONFIG_NSH_FILEIOSIZE - Size of a static I/O buffer # CONFIG_NSH_STRERROR - Use strerror(errno) # CONFIG_NSH_LINELEN - Maximum length of one command line # CONFIG_NSH_STACKSIZE - Stack size to use for new threads. # CONFIG_NSH_NESTDEPTH - Max number of nested if-then[-else]-fi # CONFIG_NSH_DISABLESCRIPT - Disable scripting support # CONFIG_NSH_DISABLEBG - Disable background commands # CONFIG_NSH_ROMFSETC - Use startup script in /etc # CONFIG_NSH_CONSOLE - Use serial console front end # CONFIG_NSH_TELNET - Use telnetd console front end # CONFIG_NSH_ARCHINIT - Platform provides architecture # specific initialization (nsh_archinitialize()). # # If CONFIG_NSH_TELNET is selected: # CONFIG_NSH_IOBUFFER_SIZE -- Telnetd I/O buffer size # CONFIG_NSH_DHCPC - Obtain address using DHCP # CONFIG_NSH_IPADDR - Provides static IP address # CONFIG_NSH_DRIPADDR - Provides static router IP address # CONFIG_NSH_NETMASK - Provides static network mask # CONFIG_NSH_NOMAC - Use a bogus MAC address # # If CONFIG_NSH_ROMFSETC is selected: # CONFIG_NSH_ROMFSMOUNTPT - ROMFS mountpoint # CONFIG_NSH_INITSCRIPT - Relative path to init script # CONFIG_NSH_ROMFSDEVNO - ROMFS RAM device minor # CONFIG_NSH_ROMFSSECTSIZE - ROMF sector size # CONFIG_NSH_FATDEVNO - FAT FS RAM device minor # CONFIG_NSH_FATSECTSIZE - FAT FS sector size # CONFIG_NSH_FATNSECTORS - FAT FS number of sectors # CONFIG_NSH_FATMOUNTPT - FAT FS mountpoint # CONFIG_NSH_FILEIOSIZE=512 CONFIG_NSH_STRERROR=n CONFIG_NSH_LINELEN=64 CONFIG_NSH_STACKSIZE=2048 CONFIG_NSH_NESTDEPTH=3 CONFIG_NSH_DISABLESCRIPT=n CONFIG_NSH_DISABLEBG=n CONFIG_NSH_ROMFSETC=n CONFIG_NSH_CONSOLE=y CONFIG_NSH_TELNET=n CONFIG_NSH_ARCHINIT=n CONFIG_NSH_IOBUFFER_SIZE=512 CONFIG_NSH_DHCPC=n CONFIG_NSH_NOMAC=n CONFIG_NSH_IPADDR=(10<<24|0<<16|0<<8|2) CONFIG_NSH_DRIPADDR=(10<<24|0<<16|0<<8|1) CONFIG_NSH_NETMASK=(255<<24|255<<16|255<<8|0) CONFIG_NSH_ROMFSMOUNTPT="/etc" CONFIG_NSH_INITSCRIPT="init.d/rcS" CONFIG_NSH_ROMFSDEVNO=0 CONFIG_NSH_ROMFSSECTSIZE=64 CONFIG_NSH_FATDEVNO=1 CONFIG_NSH_FATSECTSIZE=512 CONFIG_NSH_FATNSECTORS=1024 CONFIG_NSH_FATMOUNTPT=/tmp # # Architecture-specific NSH options # CONFIG_NSH_MMCSDSPIPORTNO=1 CONFIG_NSH_MMCSDSLOTNO=0 CONFIG_NSH_MMCSDMINOR=0 # # Settings for examples/usbserial # # CONFIG_EXAMPLES_USBSERIAL_INONLY # Only verify IN (device-to-host) data transfers. Default: both # CONFIG_EXAMPLES_USBSERIAL_OUTONLY # Only verify OUT (host-to-device) data transfers. Default: both # CONFIG_EXAMPLES_USBSERIAL_ONLYSMALL # Send only small, single packet messages. Default: Send large and small. # CONFIG_EXAMPLES_USBSERIAL_ONLYBIG # Send only large, multi-packet messages. Default: Send large and small. # CONFIG_EXAMPLES_USBSERIAL_INONLY=n CONFIG_EXAMPLES_USBSERIAL_OUTONLY=n CONFIG_EXAMPLES_USBSERIAL_ONLYSMALL=n CONFIG_EXAMPLES_USBSERIAL_ONLYBIG=n CONFIG_EXAMPLES_USBSERIAL_TRACEINIT=n CONFIG_EXAMPLES_USBSERIAL_TRACECLASS=n CONFIG_EXAMPLES_USBSERIAL_TRACETRANSFERS=n CONFIG_EXAMPLES_USBSERIAL_TRACECONTROLLER=n CONFIG_EXAMPLES_USBSERIAL_TRACEINTERRUPTS=n # # Settings for examples/usbstorage # # CONFIG_EXAMPLES_USBMSC_NLUNS # Defines the number of logical units (LUNs) exported by the USB storage # driver. Each LUN corresponds to one exported block driver (or partition # of a block driver). May be 1, 2, or 3. Default is 1. # CONFIG_EXAMPLES_USBMSC_DEVMINOR1 # The minor device number of the block driver for the first LUN. For # example, N in /dev/mmcsdN. Used for registering the block driver. Default # is zero. # CONFIG_EXAMPLES_USBMSC_DEVPATH1 # The full path to the registered block driver. Default is "/dev/mmcsd0" # CONFIG_EXAMPLES_USBMSC_DEVMINOR2 and CONFIG_EXAMPLES_USBMSC_DEVPATH2 # Similar parameters that would have to be provided if CONFIG_EXAMPLES_USBMSC_NLUNS # is 2 or 3. No defaults. # CONFIG_EXAMPLES_USBMSC_DEVMINOR3 and CONFIG_EXAMPLES_USBMSC_DEVPATH3 # Similar parameters that would have to be provided if CONFIG_EXAMPLES_USBMSC_NLUNS # is 3. No defaults. # # If CONFIG_USBDEV_TRACE is enabled (or CONFIG_DEBUG and CONFIG_DEBUG_USB), then # the example code will also manage the USB trace output. The amount of trace output # can be controlled using: # # CONFIG_EXAMPLES_USBMSC_TRACEINIT # Show initialization events # CONFIG_EXAMPLES_USBMSC_TRACECLASS # Show class driver events # CONFIG_EXAMPLES_USBMSC_TRACETRANSFERS # Show data transfer events # CONFIG_EXAMPLES_USBMSC_TRACECONTROLLER # Show controller events # CONFIG_EXAMPLES_USBMSC_TRACEINTERRUPTS # Show interrupt-related events. # CONFIG_EXAMPLES_USBMSC_NLUNS=1 CONFIG_EXAMPLES_USBMSC_DEVMINOR1=0 CONFIG_EXAMPLES_USBMSC_DEVPATH1="/dev/mmcsd0" CONFIG_EXAMPLES_USBMSC_TRACEINIT=n CONFIG_EXAMPLES_USBMSC_TRACECLASS=n CONFIG_EXAMPLES_USBMSC_TRACETRANSFERS=n CONFIG_EXAMPLES_USBMSC_TRACECONTROLLER=n CONFIG_EXAMPLES_USBMSC_TRACEINTERRUPTS=n # # Stack and heap information # # CONFIG_BOOT_RUNFROMFLASH - Some configurations support XIP # operation from FLASH but must copy initialized .data sections to RAM. # (should also be =n for the PIC32MX which always runs from flash) # CONFIG_BOOT_COPYTORAM - Some configurations boot in FLASH # but copy themselves entirely into RAM for better performance. # CONFIG_CUSTOM_STACK - The up_ implementation will handle # all stack operations outside of the nuttx model. # CONFIG_STACK_POINTER - The initial stack pointer (arm7tdmi only) # CONFIG_IDLETHREAD_STACKSIZE - 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 - The size of the stack to allocate # for the main user thread that begins at the user_start() entry point. # CONFIG_PTHREAD_STACK_MIN - Minimum pthread stack size # CONFIG_PTHREAD_STACK_DEFAULT - Default pthread stack size # CONFIG_HEAP_BASE - The beginning of the heap # CONFIG_HEAP_SIZE - The size of the heap # CONFIG_BOOT_RUNFROMFLASH=n CONFIG_BOOT_COPYTORAM=n CONFIG_CUSTOM_STACK=n CONFIG_STACK_POINTER= CONFIG_IDLETHREAD_STACKSIZE=2048 CONFIG_USERMAIN_STACKSIZE=2048 CONFIG_PTHREAD_STACK_MIN=256 CONFIG_PTHREAD_STACK_DEFAULT=2048 CONFIG_HEAP_BASE= CONFIG_HEAP_SIZE=