Misc STM32 OTF FS driver fixes + More Kconfig files

git-svn-id: https://nuttx.svn.sourceforge.net/svnroot/nuttx/trunk@4590 7fd9a85b-ad96-42d3-883c-3090e2eb8679
This commit is contained in:
patacongo
2012-04-11 17:13:04 +00:00
parent d334d4d015
commit 0c9433d032
7 changed files with 678 additions and 181 deletions
+28
View File
@@ -2,3 +2,31 @@
# For a description of the syntax of this configuration file, # For a description of the syntax of this configuration file,
# see misc/tools/kconfig-language.txt. # see misc/tools/kconfig-language.txt.
# #
menu "Named Applications"
source "$APPSDIR/namedapp/Kconfig"
endmenu
menu "Examples"
source "$APPSDIR/examples/Kconfig"
endmenu
menu "Interpreters"
source "$APPSDIR/interpreters/Kconfig"
endmenu
menu "Network Utilities"
source "$APPSDIR/netutils/Kconfig"
endmenu
menu "NSH Library"
source "$APPSDIR/nshlib/Kconfig"
endmenu
menu "System NSH Add-Ons"
source "$APPSDIR/system/Kconfig"
endmenu
menu "VSN board Add-Ons"
source "$APPSDIR/vsn/Kconfig"
endmenu
+393
View File
@@ -2,3 +2,396 @@
# For a description of the syntax of this configuration file, # For a description of the syntax of this configuration file,
# see misc/tools/kconfig-language.txt. # see misc/tools/kconfig-language.txt.
# #
config NSH_BUILTIN_APPS
bool "Enable built-in applications"
default y
---help---
Support external registered, "named" applications that can be
executed from the NSH command line (see apps/README.txt for
more information).
menu "Disable Commands"
config NSH_DISABLE_CAT
bool "Disable cat"
default n
config NSH_DISABLE_CD
bool "Disable cd"
default n
config NSH_DISABLE_CP
bool "Disable cp"
default n
config NSH_DISABLE_DD
bool "Disable dd"
default n
config NSH_DISABLE_ECHO
bool "Disable echo"
default n
config NSH_DISABLE_EXEC
bool "Disable exec"
default n
config NSH_DISABLE_EXIT
bool "Disable exit"
default n
config NSH_DISABLE_FREE
bool "Disable free"
default n
config NSH_DISABLE_GET
bool "Disable get"
default n
config NSH_DISABLE_HELP
bool "Disable help"
default n
config NSH_DISABLE_IFCONFIG
bool "Disable ifconfig"
default n
config NSH_DISABLE_KILL
bool "Disable kill"
default n
config NSH_DISABLE_LOSETUP
bool "Disable losetup"
default n
config NSH_DISABLE_LS
bool "Disable ls"
default n
config NSH_DISABLE_MB
bool "Disable mb"
default n
config NSH_DISABLE_MKDIR
bool "Disable mkdir"
default n
config NSH_DISABLE_MKFATFS
bool "Disable mkfatfs"
default n
config NSH_DISABLE_MKFIFO
bool "Disable mkfifo"
default n
config NSH_DISABLE_MKRD
bool "Disable mkrd"
default n
config NSH_DISABLE_MH
bool "Disable mh"
default n
config NSH_DISABLE_MOUNT
bool "Disable mount"
default n
config NSH_DISABLE_MW
bool "Disable mw"
default n
config NSH_DISABLE_PS
bool "Disable ps"
default n
config NSH_DISABLE_PING
bool "Disable ping"
default n
config NSH_DISABLE_PUT
bool "Disable put"
default n
config NSH_DISABLE_PWD
bool "Disable pwd"
default n
config NSH_DISABLE_RM
bool "Disable rm"
default n
config NSH_DISABLE_RMDIR
bool "Disable rmdir"
default n
config NSH_DISABLE_SET
bool "Disable set"
default n
config NSH_DISABLE_SH
bool "Disable sh"
default n
config NSH_DISABLE_SLEEP
bool "Disable sleep"
default n
config NSH_DISABLE_TEST
bool "Disable test"
default n
config NSH_DISABLE_UMOUNT
bool "Disable umount"
default n
config NSH_DISABLE_UNSET
bool "Disable unset"
default n
config NSH_DISABLE_USLEEP
bool "Disable usleep"
default n
config NSH_DISABLE_WGET
bool "Disable wget"
default n
config NSH_DISABLE_XD
bool "Disable xd"
default n
endmenu
config NSH_FILEIOSIZE
bool "NSH I/O buffer size"
default 1024
---help---
Size of a static I/O buffer used for file access (ignored if
there is no filesystem). Default is 1024.
config NSH_STRERROR
bool "Use strerror()"
default n
---help---
strerror(errno) makes more readable output but strerror() is
very large and will not be used unless this setting is 'y'
config NSH_LINELEN
int "Max command line length"
default 80
---help---
The maximum length of one command line and of one output line.
Default: 80
config NSH_NESTDEPTH
int "Maximum command nesting"
default 3
---help---
The maximum number of nested if-then[-else]-fi sequences that
are permissable. Default: 3
config NSH_DISABLESCRIPT
bool "Disable script support"
default n
---help---
This can be set to 'y' to suppress support for scripting. This
setting disables the 'sh', 'test', and '[' commands and the
if-then[-else]-fi construct. This would only be set on systems
where a minimal footprint is a necessity and scripting is not.
config NSH_DISABLEBG
bool "Disable background commands"
default n
---help---
This can be set to 'y' to suppress support for background
commands. This setting disables the 'nice' command prefix and
the '&' command suffix. This would only be set on systems
where a minimal footprint is a necessity and background command
execution is not.
config NSH_MMCSDMINOR
int "MMC/SD minor device number"
default 0
---help---
If the architecture supports an MMC/SD slot and if the NSH
architecture specific logic is present, this option will provide
the MMC/SD minor number, i.e., the MMC/SD block driver will
be registered as /dev/mmcsdN where N is the minor number.
Default is zero.
config NSH_ROMFSETC
bool "Support ROMFS start-up script"
default n
---help---
Mount a ROMFS filesystem at /etc and provide a startup script
at /etc/init.d/rcS. The default startup script will mount
a FAT FS RAMDISK at /tmp but the logic is easily extensible.
if NSH_ROMFSETC
config NSH_ROMFSMOUNTPT
string "ROMFS mount point"
default "/etc"
---help---
The default mountpoint for the ROMFS volume is /etc, but that
can be changed with this setting. This must be a absolute path
beginning with '/'.
config NSH_INITSCRIPT
string "Relative path to startup script"
default "init.d/rcS"
---help---
This is the relative path to the startup script within the mountpoint.
The default is init.d/rcS. This is a relative path and must not
start with '/'.
config NSH_ROMFSDEVNO
int "ROMFS block device minor number"
default 0
---help---
This is the minor number of the ROMFS block device. The default is
'0' corresponding to /dev/ram0.
config NSH_ROMFSSECTSIZE
int "ROMFS sector size"
default 64
---help---
This is the sector size to use with the ROMFS volume. Since the
default volume is very small, this defaults to 64 but should be
increased if the ROMFS volume were to be become large. Any value
selected must be a power of 2.
config NSH_FATDEVNO
int "FAT block device minor number"
default 0
---help---
When the default rcS file used when NSH_ROMFSETC is selected, it
will mount a FAT FS under /tmp. This is the minor number of the FAT
FS block device. The default is '1' corresponding to /dev/ram1.
config NSH_FATSECTSIZE
int "FAT sector size"
default 512
---help---
When the default rcS file used when NSH_ROMFSETC is selected, it
will mount a FAT FS under /tmp. This is the sector size use with the
FAT FS. Default is 512.
config NSH_FATNSECTORS
int "FAT number of sectors"
default 1024
---help---
When the default rcS file used when NSH_ROMFSETC is selected, it
will mount a FAT FS under /tmp. This is the number of sectors to use
with the FAT FS. Defualt is 1024. The amount of memory used by the
FAT FS will be NSH_FATSECTSIZE * NSH_FATNSECTORS bytes.
config NSH_FATMOUNTPT
string "FAT mount point"
default 512
---help---
When the default rcS file used when NSH_ROMFSETC is selected, it
will mount a FAT FS under /tmp. This is the location where the FAT
FS will be mounted. Default is /tmp.
endif
config NSH_CONSOLE
bool "Use console"
default y
---help---
If NSH_CONSOLE is set to 'y', then a character driver
console front-end is selected (/dev/console).
Normally, the serial console device is a UART and RS-232
interface. However, if CONFIG_USBDEV is defined, then a USB
serial device may, instead, be used if the one of
the following are defined:
CONFIG_PL2303 and CONFIG_PL2303_CONSOLE - Sets up the
Prolifics PL2303 emulation as a console device at /dev/console.
CONFIG_CDCACM and CONFIG_CDCACM_CONSOLE - Sets up the
CDC/ACM serial device as a console device at dev/console.
config NSH_CONDEV
bool "Default console device"
default "/dev/console"
depends on NSH_CONSOLE
---help---
If NSH_CONSOLE is set to 'y', then NSH_CONDEV
may also be set to select the serial device used to support
the NSH console. This should be set to the quoted name of a
readable/write-able character driver such as:
NSH_CONDEV="/dev/ttyS1". This is useful, for example,
to separate the NSH command line from the system console when
the system console is used to provide debug output. Default:
stdin and stdout (probably "/dev/console")
NOTE: When any other device other than /dev/console is used
for a user interface, (1) linefeeds (\n) will not be expanded to
carriage return / linefeeds (\r\n). You will need to set
your terminal program to account for this. And (2) input is
not automatically echoed so you will have to turn local echo on.
config NSH_ARCHINIT
bool "Have architecture-specific initialization"
default n
---help---
Set if your board provides architecture specific initialization
via the board-specific function nsh_archinitialize(). This
function will be called early in NSH initialization to allow
board logic to do such things as configure MMC/SD slots.
config NSH_TELNET
bool "Use Telnet console"
default n
depends on NET && NET_TCP
---help---
If NSH_TELNET is set to 'y', then a TELENET
server front-end is selected. When this option is provided,
you may log into NuttX remotely using telnet in order to
access NSH.
if NSH_TELNET
config NSH_TELNETD_PORT
int "Telnet port number"
default 23
---help---
The telnet daemon will listen on this TCP port number for connections.
Default: 23
config NSH_TELNETD_DAEMONPRIO
int "Telnet daemon priority"
default 100
---help---
Priority of the Telnet daemon. Default: 100
config NSH_TELNETD_DAEMONSTACKSIZE
int "Telnet daemon stack size"
default 2048
---help---
Stack size allocated for the Telnet daemon. Default: 2048
config NSH_TELNETD_CLIENTPRIO
int "Telnet client priority"
default 100
---help---
Priority of the Telnet client. Default: 100
config NSH_TELNETD_CLIENTSTACKSIZE
int "Telnet client stack size"
default 2048
---help---
Stack size allocated for the Telnet client. Default: 2048
config NSH_IOBUFFER_SIZE
int "Telnet I/O buffer size"
default 512
---help---
Determines the size of the I/O buffer to use for sending/
receiving TELNET commands/reponses. Default: 512
endif
config NSH_DHCPC
bool "Use DHCP to get IP address"
default n
depends on NET && NET_UDP && NET_BROADCAST
---help---
Obtain the IP address via DHCP.
Per RFC2131 (p. 9), the DHCP client must be prepared to receive DHCP
messages of up to 576 bytes (excluding Ethernet, IP, or UDP headers and FCS).
if !NSH_DHCPC
config NSH_IPADDR
int "Target IP address"
default 0x10000002
---help---
If NSH_DHCPC is NOT set, then the static IP address must be provided.
This is a 32-bit integer value in host order. So, as an example,
0x10000002 would be 10.0.0.2.
config NSH_DRIPADDR
int "Router IP address"
default 0x10000001
---help---
Default router IP address (aka, Gateway). This is a 32-bit integer
value in host order. So, as an example, 0x10000001 would be 10.0.0.1.
config NSH_NETMASK
int "Network mask"
default 0xffffff00
---help---
Network mask. This is a 32-bit integer value in host order. So, as
an example, 0xffffff00 would be 255.255.255.0.
endif
config NSH_NOMAC
bool "Hardware has no MAC address"
default n
depends on NET
---help---
Set if your ethernet hardware has no built-in MAC address.
If set, a bogus MAC will be assigned.
+103 -3
View File
@@ -9,11 +9,109 @@ config APPSDIR
string string
option env="APPSDIR" option env="APPSDIR"
menu "General setup" menu "General Setup"
config EXPERIMENTAL config EXPERIMENTAL
bool "Prompt for development and/or incomplete code/drivers" bool "Prompt for development and/or incomplete code/drivers"
comment "General build options" menu "Build Configuration"
config APPS_DIR
string "Application directory"
default "../apps"
---help---
Identifies the directory that builds the
application to link with NuttX. Default: ../apps This symbol must be assigned
to the path to the application build directory *relative* to
the NuttX top build direcory. If you had an application
directory and the NuttX directory each in separate directory
trees like this:
build
|-nuttx
| |
| `- Makefile
`-application
|
`- Makefile
Then you would set CONFIG_APPS_DIR=../application.
The application direction must contain Makefile and this make
file must support the following targets:
libapps$(LIBEXT) (usually libapps.a). libapps.a is a static
library ( an archive) that contains all of application object
files.
clean. Do whatever is appropriate to clean the application
directories for a fresh build.
distclean. Clean everthing -- auto-generated files, symbolic
links etc. -- so that the directory contents are the same as
the contents in your configuration management system.
This is only done when you change the NuttX configuration.
depend. Make or update the application build dependencies.
When this application is invoked it will receive the setting TOPDIR like:
$(MAKE) -C $(CONFIG_APPS_DIR) TOPDIR="$(TOPDIR)" <target>
TOPDIR is the full path to the NuttX directory. It can be used, for
example, to include makefile fragments (e.g., .config or Make.defs)
or to set up include file paths.
config BUILD_2PASS
bool "Two pass build"
default n
---help---
Enables the two pass build options.
Two-pass build options. If the 2 pass build option is selected, then these
options configure the make system build a extra link object. This link object
is assumed to be an incremental (relative) link object, but could be a static
library (archive) (some modification to this Makefile would be required if
CONFIG_PASS1_TARGET generates an archive). Pass 1 1ncremental (relative) link
objects should be put into the processor-specific source directory (where other
link objects will be created). If the pass1 obect is an archive, it could
go anywhere.
if BUILD_2PASS
config PASS1_TARGET
string "Pass one target"
default ""
---help---
The name of the first pass build target. This
can be specific build target, a special build target (all, default, etc.)
or may just be left undefined.
config PASS1_BUILDIR
string "Pass one build directory"
default "build"
---help---
The path, relative to the top NuttX build
directory to directory that contains the Makefile to build the
first pass object. The Makefile must support the following targets:
The special target CONFIG_PASS1_TARGET (if defined)
and the usual depend, clean, and distclean targets.
config PASS1_OBJECT
string "Pass one object"
default ""
---help---
May be used to include an extra, pass1 object
into the final link. This would probably be the object generated
from the CONFIG_PASS1_TARGET. It may be available at link time
in the arch/<architecture>/src directory.
config NUTTX_KERNEL
bool "NuttX kernel build"
default n
---help---
Builds NuttX as a separately compiled kernel.
endif
endmenu
menu "Binary Output Formats"
config RRLOAD_BINARY config RRLOAD_BINARY
bool "rrload binary format" bool "rrload binary format"
@@ -45,8 +143,9 @@ config RAW_BINARY
Create the nuttx.bin in the raw binary format that is used with many Create the nuttx.bin in the raw binary format that is used with many
different loaders using the GNU objcopy program. This option different loaders using the GNU objcopy program. This option
should not be selected if you are not using the GNU toolchain. should not be selected if you are not using the GNU toolchain.
endmenu
comment "General debug options" menu "Debug Options"
config DEBUG config DEBUG
bool "Enable debug output" bool "Enable debug output"
@@ -136,6 +235,7 @@ config DEBUG_SYMBOLS
Build without optimization and with debug symbols (needed Build without optimization and with debug symbols (needed
for use with a debugger). for use with a debugger).
endmenu endmenu
endmenu
menu "System Type" menu "System Type"
source "arch/Kconfig" source "arch/Kconfig"
+13 -3
View File
@@ -1020,6 +1020,16 @@ static void stm32_epin_request(FAR struct stm32_usbdev_s *priv,
privep->epphy, privreq, privreq->req.len, privep->epphy, privreq, privreq->req.len,
privreq->req.xfrd, privep->zlp); privreq->req.xfrd, privep->zlp);
/* Check for a special case: If we are just starting a request (xfrd==0) and
* the class driver is trying to send a zero-length packet (len==0). Then set
* the ZLP flag so that the packet will be sent.
*/
if (privreq->req.len == 0)
{
privep->zlp = true;
}
/* Loop while there are still bytes to be transferred (or a zero-length- /* Loop while there are still bytes to be transferred (or a zero-length-
* packet, ZLP, to be sent). The loop will also be terminated if there * packet, ZLP, to be sent). The loop will also be terminated if there
* is insufficient space remaining in the TxFIFO to send a complete * is insufficient space remaining in the TxFIFO to send a complete
@@ -1043,7 +1053,7 @@ static void stm32_epin_request(FAR struct stm32_usbdev_s *priv,
* the request. * the request.
*/ */
privep->zlp = 0; privep->zlp = false;
if (nbytes >= privep->ep.maxpacket) if (nbytes >= privep->ep.maxpacket)
{ {
nbytes = privep->ep.maxpacket; nbytes = privep->ep.maxpacket;
@@ -1056,7 +1066,7 @@ static void stm32_epin_request(FAR struct stm32_usbdev_s *priv,
if (bytesleft == privep->ep.maxpacket && if (bytesleft == privep->ep.maxpacket &&
(privreq->req.flags & USBDEV_REQFLAGS_NULLPKT) != 0) (privreq->req.flags & USBDEV_REQFLAGS_NULLPKT) != 0)
{ {
privep->zlp = 1; privep->zlp = true;
} }
} }
} }
@@ -1127,7 +1137,7 @@ static void stm32_epin_request(FAR struct stm32_usbdev_s *priv,
usbtrace(TRACE_COMPLETE(privep->epphy), privreq->req.xfrd); usbtrace(TRACE_COMPLETE(privep->epphy), privreq->req.xfrd);
stm32_req_complete(privep, OK); stm32_req_complete(privep, OK);
privep->zlp = 0; privep->zlp = false;
privep->active = false; privep->active = false;
} }
} }
+1 -1
View File
@@ -312,7 +312,7 @@
#define USBMSC_NINTERFACES (1) /* Number of interfaces in the configuration */ #define USBMSC_NINTERFACES (1) /* Number of interfaces in the configuration */
#define USBMSC_INTERFACEID (CONFIG_USBMSC_IFNOBASE+0) #define USBMSC_INTERFACEID (CONFIG_USBMSC_IFNOBASE+0)
#define USBMSC_ALTINTERFACEID USBMSC_INTERFACEID #define USBMSC_ALTINTERFACEID (0)
#define USBMSC_CONFIGIDNONE (0) /* Config ID means to return to address mode */ #define USBMSC_CONFIGIDNONE (0) /* Config ID means to return to address mode */
#define USBMSC_CONFIGID (1) /* The only supported configuration ID */ #define USBMSC_CONFIGID (1) /* The only supported configuration ID */
+6
View File
@@ -17,6 +17,12 @@ config STDIO_LINEBUFFER
Flush buffer I/O whenever a newline character is found in Flush buffer I/O whenever a newline character is found in
the output data stream. the output data stream.
config NUNGET_CHARS
int "Number unget() characters"
default 2
---help---
Number of characters that can be buffered by ungetc() (Only if NFILE_STREAMS > 0)
config CONFIG_LIB_HOMEDIR config CONFIG_LIB_HOMEDIR
string "Home directory" string "Home directory"
default "/" default "/"
+87 -127
View File
@@ -2,47 +2,35 @@
# For a description of the syntax of this configuration file, # For a description of the syntax of this configuration file,
# see misc/tools/kconfig-language.txt. # 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 config MSEC_PER_TICK
int "tick timer" int "tick timer"
default 10 default 10
---help--- ---help---
The default system timer is 100Hz The default system timer is 100Hz or MSEC_PER_TICK=10. This setting
or MSEC_PER_TICK=10. This setting may be defined to may be defined to inform NuttX that the processor hardware is providing
inform NuttX that the processor hardware is providing system timer interrupts at some interrupt interval other than 10 msec.
system timer interrupts at some interrupt interval other
than 10 msec.
config RR_INTERVAL config RR_INTERVAL
int "round robin timeslice" int "round robin timeslice"
default 0 default 0
---help--- ---help---
The round robin timeslice will be set The round robin timeslice will be set this number of milliseconds;
this number of milliseconds; Round robin scheduling can Round robin scheduling can be disabled by setting this value to zero.
be disabled by setting this value to zero.
config SCHED_INSTRUMENTATION config SCHED_INSTRUMENTATION
bool "monitor system performance" bool "Monitor system performance"
default n default n
---help--- ---help---
enables instrumentation in enables instrumentation in scheduler to monitor system performance.
scheduler to monitor system performance
config TASK_NAME_SIZE config TASK_NAME_SIZE
int "task name size" int "Maximum task name size"
default 32 default 32
---help--- ---help---
Spcifies that maximum size of a Spcifies that maximum size of a task name to save in the TCB.
task name to save in the TCB. Useful if scheduler Useful if scheduler instrumentation is selected. Set to zero to
instrumentation is selected. Set to zero to disable. disable.
config JULIAN_TIME config JULIAN_TIME
bool "Enables Julian time conversions" bool "Enables Julian time conversions"
@@ -63,61 +51,56 @@ config START_DAY
default 1 default 1
config DEV_CONSOLE config DEV_CONSOLE
bool "enable /dev/console" bool "Enable /dev/console"
default y default y
---help--- ---help---
Set if architecture-specific logic Set if architecture-specific logic provides /dev/console. Enables
provides /dev/console. Enables stdout, stderr, stdin. stdout, stderr, stdin.
config DEV_LOWCONSOLE config DEV_LOWCONSOLE
bool "enable low-level serial console" bool "enable low-level serial console"
default n default n
---help--- ---help---
Use the simple, low-level serial console Use the simple, low-level, write-only serial console driver (minimul support)
driver (minimul support)
config MUTEX_TYPES: config MUTEX_TYPES:
bool "enable mutex types" bool "Enable mutex types"
default n default n
---help--- ---help---
Set to enable support for recursive and Set to enable support for recursive and errorcheck mutexes. Enables
errorcheck mutexes. Enables pthread_mutexattr_settype(). pthread_mutexattr_settype().
config PRIORITY_INHERITANCE config PRIORITY_INHERITANCE
bool "enable priority inheritance " bool "Enable priority inheritance "
default n default n
---help--- ---help---
Set to enable support for priority Set to enable support for priority inheritance on mutexes and semaphores.
inheritance on mutexes and semaphores.
config SEM_PREALLOCHOLDERS config SEM_PREALLOCHOLDERS
int "pre alloc holders" int "Pre-allocated holders"
default 16 default 16
depends on PRIORITY_INHERITANCE depends on PRIORITY_INHERITANCE
---help--- ---help---
This setting is only used if priority This setting is only used if priority inheritance is enabled.
inheritance is enabled. It defines the maximum number of It defines the maximum number of different threads (minus one) that
different threads (minus one) that can take counts on a can take counts on a semaphore with priority inheritance support.
semaphore with priority inheritance support. This may be This may be set to zero if priority inheritance is disabled OR if you
set to zero if priority inheritance is disabled OR if you are only using semaphores as mutexes (only one holder) OR if no more
are only using semaphores as mutexes (only one holder) OR than two threads participate using a counting semaphore.
if no more than two threads participate using a counting
semaphore.
config SEM_NNESTPRIO config SEM_NNESTPRIO
int "maximum number of higher priority threads" int "Maximum number of higher priority threads"
default 16 default 16
depends on PRIORITY_INHERITANCE depends on PRIORITY_INHERITANCE
---help--- ---help---
If priority inheritance is enabled, If priority inheritance is enabled, then this setting is the
then this setting is the maximum number of higher priority maximum number of higher priority threads (minus 1) than can be
threads (minus 1) than can be waiting for another thread waiting for another thread to release a count on a semaphore.
to release a count on a semaphore. This value may be set This value may be set to zero if no more than one thread is
to zero if no more than one thread is expected to wait for expected to wait for a semaphore.
a semaphore.
config FDCLONE_DISABLE config FDCLONE_DISABLE
bool "disable clone all file descriptors" bool "Disable cloning of file descriptors"
default n default n
---help--- ---help---
Disable cloning of all file descriptors Disable cloning of all file descriptors
@@ -125,17 +108,16 @@ config FDCLONE_DISABLE
files/drivers will appear to be closed in the new task. files/drivers will appear to be closed in the new task.
config FDCLONE_STDIO config FDCLONE_STDIO
bool "disable clone file descriptors without stdio" bool "Disable clone file descriptors without stdio"
default n default n
---help--- ---help---
Disable cloning of all but the first Disable cloning of all but the first three file descriptors (stdin,
three file descriptors (stdin, stdout, stderr) by task_create() stdout, stderr) by task_create() when a new task is started. If set,
when a new task is started. If set, all files/drivers will all files/drivers will appear to be closed in the new task except
appear to be closed in the new task except for stdin, stdout, for stdin, stdout, and stderr.
and stderr.
config SDCLONE_DISABLE config SDCLONE_DISABLE
bool "disable cloning of all socket" bool "Disable cloning of socket descriptors"
default n default n
---help--- ---help---
Disable cloning of all socket Disable cloning of all socket
@@ -143,7 +125,7 @@ config SDCLONE_DISABLE
set, all sockets will appear to be closed in the new task. set, all sockets will appear to be closed in the new task.
config DISABLE_OS_API config DISABLE_OS_API
bool "disable os api" bool "Disable NuttX interfaces"
default n default n
---help--- ---help---
The following can be used to disable categories of The following can be used to disable categories of
@@ -161,82 +143,80 @@ config DISABLE_OS_API
up waiting tasks. up waiting tasks.
config DISABLE_CLOCK config DISABLE_CLOCK
bool "disable clock" bool "Disable clock interfaces"
depends on DISABLE_OS_API depends on DISABLE_OS_API
default n default n
config DISABLE_POSIX_TIMERS config DISABLE_POSIX_TIMERS
bool "disable posix timers" bool "Disable POSIX timers"
depends on DISABLE_OS_API depends on DISABLE_OS_API
default n default n
config DISABLE_PTHREAD config DISABLE_PTHREAD
bool "disable pthread" bool "Disable pthread support"
depends on DISABLE_OS_API depends on DISABLE_OS_API
default n default n
config DISABLE_SIGNALS config DISABLE_SIGNALS
bool "disable signals" bool "Disable signal support"
depends on DISABLE_OS_API depends on DISABLE_OS_API
default n default n
config DISABLE_MQUEUE config DISABLE_MQUEUE
bool "disable mqueue" bool "Disable POSIX message queue support"
depends on DISABLE_OS_API depends on DISABLE_OS_API
default n default n
config DISABLE_MOUNTPOINT config DISABLE_MOUNTPOINT
bool "disable mount point" bool "Disable support for mount points"
depends on DISABLE_OS_API depends on DISABLE_OS_API
default n default n
config DISABLE_ENVIRON config DISABLE_ENVIRON
bool "disable environ" bool "Disable environment variable support"
depends on DISABLE_OS_API depends on DISABLE_OS_API
default n default n
config DISABLE_POLL config DISABLE_POLL
bool "disable poll" bool "Disable driver poll interfaces"
depends on DISABLE_OS_API depends on DISABLE_OS_API
default n default n
comment "Sizes of configurable things (0 disables)" comment "Sizes of configurable things (0 disables)"
config MAX_TASKS config MAX_TASKS
int "max tasks" int "Max tasks"
default 32 default 32
---help--- ---help---
The maximum number of simultaneously The maximum number of simultaneously active tasks. This value must be
active tasks. This value must be a power of two. a power of two.
config MAX_TASK_ARGS config MAX_TASK_ARGS
int "max task args" int "Maximum number of task arguments"
default 4 default 4
---help--- ---help---
This controls the maximum number of This controls the maximum number of of parameters that a task may
of parameters that a task may receive (i.e., maxmum value receive (i.e., maxmum value of 'argc')
of 'argc')
config NPTHREAD_KEYS config NPTHREAD_KEYS
int "number pthread keys" int "Number of pthread keys"
default 4 default 4
---help--- ---help---
The number of items of thread- The number of items of thread-
specific data that can be retained specific data that can be retained
config NFILE_DESCRIPTORS config NFILE_DESCRIPTORS
int "max file descriptors" int "Max file descriptors"
default 16 default 16
---help--- ---help---
The maximum number of file The maximum number of file
descriptors (one for each open) descriptors (one for each open)
config NFILE_STREAMS config NFILE_STREAMS
int "max file streams" int "Max file streams"
default 16 default 16
---help--- ---help---
The maximum number of streams that The maximum number of streams that can be fopen'ed
can be fopen'ed
config NAME_MAX config NAME_MAX
int "name max" int "name max"
@@ -244,35 +224,19 @@ config NAME_MAX
---help--- ---help---
The maximum size of a file name. 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 config PREALLOC_MQ_MSGS
int "pre alloc mq_msgs" int "Pre-allocated messages"
default 32 default 32
---help--- ---help---
The number of pre-allocated message The number of pre-allocated message structures. The system manages
structures. The system manages a pool of preallocated a pool of preallocated message structures to minimize dynamic allocations
message structures to minimize dynamic allocations
config MQ_MAXMSGSIZE config MQ_MAXMSGSIZE
int "mq max message size" int "Maximum message size"
default 32 default 32
---help--- ---help---
Message structures are allocated with Message structures are allocated with a fixed payload size given by this
a fixed payload size given by this settin (does not include setting (does not include other message structure overhead.
other message structure overhead.
config MAX_WDOGPARMS config MAX_WDOGPARMS
int "max watchdog parms" int "max watchdog parms"
@@ -282,32 +246,28 @@ config MAX_WDOGPARMS
can be passed to a watchdog handler can be passed to a watchdog handler
config PREALLOC_WDOGS config PREALLOC_WDOGS
int "pre alloc watchdogs" int "Pre-allocated watchdogs"
default 32 default 32
---help--- ---help---
The number of pre-allocated watchdog The number of pre-allocated watchdog structures. The system manages a
structures. The system manages a pool of preallocated pool of preallocated watchdog structures to minimize dynamic allocations
watchdog structures to minimize dynamic allocations
config PREALLOC_TIMERS config PREALLOC_TIMERS
int "pre alloc timers" int "Pre-allocated timers"
default 8 default 8
---help--- ---help---
The number of pre-allocated POSIX The number of pre-allocated POSIX timer structures. The system manages a
timer structures. The system manages a pool of preallocated pool of preallocated timer structures to minimize dynamic allocations. Set to
timer structures to minimize dynamic allocations. Set to
zero for all dynamic allocations. zero for all dynamic allocations.
comment "Stack and heap information" comment "Stack and heap information"
config BOOT_RUNFROMFLASH config BOOT_RUNFROMFLASH
bool "boot run from flash" bool "boot run from flash"
default n default n
---help--- ---help---
Some configurations support XIP Some configurations support XIP operation from FLASH but must copy
operation from FLASH but must copy initialized .data sections to RAM. initialized .data sections to RAM
(should also be =n for the LPC17xx which always runs from flash)
config BOOT_COPYTORAM config BOOT_COPYTORAM
bool "boot copy to ram" bool "boot copy to ram"
@@ -317,11 +277,12 @@ config BOOT_COPYTORAM
but copy themselves entirely into RAM for better performance. but copy themselves entirely into RAM for better performance.
config CUSTOM_STACK config CUSTOM_STACK
bool "enable custom stack" bool "Enable custom stack"
default n default n
---help--- ---help---
The up_ implementation will handle The up_ implementation will handle all stack operations outside of the
all stack operations outside of the nuttx model. nuttx model. This is necessary for certain architectures that have
have hardware stacks (such as the 8051 family).
config STACK_POINTER config STACK_POINTER
hex "" hex ""
@@ -330,30 +291,29 @@ config STACK_POINTER
The initial stack pointer (arm7tdmi only) The initial stack pointer (arm7tdmi only)
config IDLETHREAD_STACKSIZE config IDLETHREAD_STACKSIZE
int "idle thread stack size" int "Idle thread stack size"
default 1024 default 1024
---help--- ---help---
The size of the initial stack. The size of the initial stack used by the IDLE thread. The IDLE thread
This is the thread that (1) performs the inital boot of the system up is the thread that (1) performs the inital boot of the system up to the
to the point where user_start() is spawned, and (2) there after is the point where user_start() is spawned, and (2) there after is the IDLE
IDLE thread that executes only when there is no other thread ready to thread that executes only when there is no other thread ready to run.
run.
config USERMAIN_STACKSIZE config USERMAIN_STACKSIZE
int "main thread stack size" int "Main thread stack size"
default 2048 default 2048
---help--- ---help---
The size of the stack to allocate The size of the stack to allocate for the main user thread that begins at
for the main user thread that begins at the user_start() entry point. the user_start() entry point.
config PTHREAD_STACK_MIN config PTHREAD_STACK_MIN
int "minimum thrad stack size" int "Minimum pthread stack size"
default 256 default 256
---help--- ---help---
Minimum pthread stack size Minimum pthread stack size
config PTHREAD_STACK_DEFAULT config PTHREAD_STACK_DEFAULT
int "default stack size" int "Default pthread stack size"
default 2048 default 2048
---help--- ---help---
Default pthread stack size Default pthread stack size