aboutsummaryrefslogtreecommitdiff
path: root/nuttx/Kconfig
diff options
context:
space:
mode:
authorpx4dev <px4@purgatory.org>2012-08-04 15:12:36 -0700
committerpx4dev <px4@purgatory.org>2012-08-04 15:12:36 -0700
commit8a365179eafdf3aea98e60ab9f5882b200d4c759 (patch)
tree4f38d6d4cd80bd0b6e22e2bb534c3f117ce44e56 /nuttx/Kconfig
downloadpx4-firmware-8a365179eafdf3aea98e60ab9f5882b200d4c759.tar.gz
px4-firmware-8a365179eafdf3aea98e60ab9f5882b200d4c759.tar.bz2
px4-firmware-8a365179eafdf3aea98e60ab9f5882b200d4c759.zip
Fresh import of the PX4 firmware sources.
Diffstat (limited to 'nuttx/Kconfig')
-rw-r--r--nuttx/Kconfig289
1 files changed, 289 insertions, 0 deletions
diff --git a/nuttx/Kconfig b/nuttx/Kconfig
new file mode 100644
index 000000000..7a8ba9bf2
--- /dev/null
+++ b/nuttx/Kconfig
@@ -0,0 +1,289 @@
+#
+# For a description of the syntax of this configuration file,
+# see misc/tools/kconfig-language.txt.
+#
+
+mainmenu "Nuttx/$ARCH Configuration"
+
+config APPSDIR
+ string
+ option env="APPSDIR"
+
+# This is a temporary kludge to let the build system know that we are using the new
+# configuration system
+
+config NUTTX_NEWCONFIG
+ bool
+ default y
+
+menu "General Setup"
+config EXPERIMENTAL
+ bool "Prompt for development and/or incomplete code/drivers"
+
+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
+ bool "rrload binary format"
+ default n
+ ---help---
+ Create nuttx.rr in the rrload binary format used with
+ BSPs from www.ridgerun.com using the tools/mkimage.sh script.
+
+config INTELHEX_BINARY
+ bool "Intel HEX binary format"
+ default n
+ ---help---
+ Create the nuttx.hex in the Intel HEX binary format that is
+ used with many different loaders. This option will use the GNU objcopy program
+ and should not be selected if you are not using the GNU toolchain.
+
+config MOTOROLA_SREC
+ bool "Motorola S-Record binary format"
+ default n
+ ---help---
+ Create the nuttx.srec in the Motorola S-Record binary format that is
+ used with many different loaders. This option will use the GNU objcopy program
+ and should not be selected if you are not using the GNU toolchain.
+
+config RAW_BINARY
+ bool "Raw binary format"
+ default n
+ ---help---
+ Create the nuttx.bin in the raw binary format that is used with many
+ different loaders using the GNU objcopy program. This option
+ should not be selected if you are not using the GNU toolchain.
+endmenu
+
+menu "Debug Options"
+
+config DEBUG
+ bool "Enable debug output"
+ default n
+ ---help---
+ enables built-in debug options
+
+if DEBUG
+config DEBUG_VERBOSE
+ bool "Enable debug verbose output"
+ default n
+ ---help---
+ enables verbose debug output
+
+config DEBUG_ENABLE
+ bool "Enable debug controls"
+ default n
+ ---help---
+ Support an interface to enable or disable debug output.
+
+config DEBUG_SCHED
+ bool "Enable scheduler debug output"
+ default n
+ ---help---
+ Enable OS debug output (disabled by default)
+
+config DEBUG_MM
+ bool "Enable memory manager debug output"
+ default n
+ ---help---
+ Enable memory management debug output (disabled by default)
+
+config DEBUG_NET
+ bool "Enable network debug output"
+ default n
+ ---help---
+ Enable network debug output (disabled by default)
+
+config DEBUG_USB
+ bool "Enable USB debug output"
+ default n
+ ---help---
+ Enable usb debug output (disabled by default)
+
+config DEBUG_FS
+ bool "Enable file system debug output"
+ default n
+ ---help---
+ Enable file system debug output (disabled by default)
+
+config DEBUG_LIB
+ bool "Enable C library debug output"
+ default n
+ ---help---
+ Enable C library debug output (disabled by default)
+
+config DEBUG_BINFMT
+ bool "Enable binary loader debug output"
+ default n
+ ---help---
+ Enable binary loader debug output (disabled by default)
+
+config DEBUG_GRAPHICS
+ bool "Enable graphics debug output"
+ default n
+ ---help---
+ Enable NX graphics debug output (disabled by default)
+
+config DEBUG_I2C
+ bool "Enable I2C debug output"
+ default n
+ ---help---
+ Enable I2C driver debug output (disabled by default)
+
+config DEBUG_SPI
+ bool "Enable SPI debug output"
+ default n
+ ---help---
+ Enable I2C driver debug output (disabled by default)
+
+config DEBUG_WATCHDOG
+ bool "Enable watchdog timer debug output"
+ default n
+ ---help---
+ Enable watchdog timer debug output (disabled by default)
+
+endif
+
+config DEBUG_SYMBOLS
+ bool "Enable debug symbols"
+ default n
+ ---help---
+ Build without optimization and with debug symbols (needed
+ for use with a debugger).
+endmenu
+endmenu
+
+menu "System Type"
+source "arch/Kconfig"
+endmenu
+
+menu "Board Selection"
+source "configs/Kconfig"
+endmenu
+
+menu "Kernel Features"
+source sched/Kconfig
+endmenu
+
+menu "Device Drivers"
+source drivers/Kconfig
+endmenu
+
+menu "Networking support"
+source net/Kconfig
+endmenu
+
+menu "File systems"
+source fs/Kconfig
+endmenu
+
+menu "Memory management"
+source mm/Kconfig
+endmenu
+
+menu "Library routines"
+source lib/Kconfig
+source libxx/Kconfig
+endmenu
+
+menu "Application configuration"
+source "$APPSDIR/Kconfig"
+endmenu
+