#
# For a description of the syntax of this configuration file,
# see misc/tools/kconfig-language.txt.
#

choice
	prompt "Select target board"
	default ARCH_BOARD_CUSTOM
	---help---
		Select the board hosting the architure.  You must first select the
		exact MCU part number, then the boards supporting that part will
		be available for selection.  Use ARCH_BOARD_CUSTOM to create a new
		board configuration.

config ARCH_BOARD_AMBER
	bool "Amber Web Server"
	depends on ARCH_CHIP_ATMEGA128
	---help---
		This is placeholder for the SoC Robotics Amber Web Server that is based
		on the Atmel AVR ATMega128 MCU.  There is not much there yet and what is
		there is untested due to tool-related issues.

config ARCH_BOARD_AVR32DEV1
	bool "Atmel AVR32DEV1 board"
	depends on ARCH_CHIP_AT32UC3B0256
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This is a port of NuttX to the Atmel AVR32DEV1 board.  That board is
		based on the Atmel AT32UC3B0256 MCU and uses a specially patched
		version of the GNU toolchain:  The patches provide support for the
		AVR32 family.  That patched GNU toolchain is available only from the
		Atmel website.  STATUS: This port is functional but very basic.  There
		are configurations for NSH and the OS test.

config ARCH_BOARD_C5471EVM
	bool "Spectrum Digital C5471 evaluation board"
	depends on ARCH_CHIP_C5471
	select ARCH_HAVE_LEDS
	---help---
		This is a port to the Spectrum Digital C5471 evaluation board.  The
		TMS320C5471 is a dual core processor from TI with an ARM7TDMI general
		purpose processor and a c54 DSP.  It is also known as TMS320DA180 or just DA180.
		NuttX runs on the ARM core and is built with a GNU arm-nuttx-elf toolchain*.
		This port is complete and verified.

config ARCH_BOARD_CLOUDCTRL
	bool "Darcy's CloudController stm32f10x board"
	depends on ARCH_CHIP_STM32F107VC
	---help---
		Small network relay development board. Based on the Shenzhou IV development 
		board design.

config ARCH_BOARD_COMPALE88
	bool "Compal e88 phone"
	depends on ARCH_CHIP_CALYPSO
	---help---
		These directories contain the board support for compal e88 and e99 phones.
		These ports are based on patches contributed by Denis Carikli for both the
		compal e99 and e88.  The patches were made by Alan Carvalho de Assis and
		Denis Carikli using the Stefan Richter's Osmocom-bb patches.

config ARCH_BOARD_COMPALE99
	bool "Compal e99 phone"
	depends on ARCH_CHIP_CALYPSO
	---help---
		These directories contain the board support for compal e88 and e99 phones.
		These ports are based on patches contributed by Denis Carikli for both the
		compal e99 and e88.  The patches were made by Alan Carvalho de Assis and
		Denis Carikli using the Stefan Richter's Osmocom-bb patches.

config ARCH_BOARD_DEMOS92S12NEC64
	bool "Freescale DMO9S12NE64 board"
	depends on ARCH_CHIP_MCS92S12NEC64
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	---help---
	Freescale DMO9S12NE64 board based on the MC9S12NE64 hcs12 cpu.  This
	port uses the m9s12x GCC toolchain.  STATUS:  (Still) under development; it
	is code complete but has not yet been verified.

config ARCH_BOARD_EA3131
	bool "Embedded Artists EA3131 Development board"
	depends on ARCH_CHIP_LPC3131
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	---help---
		Embedded Artists EA3131 Development board.  This board is based on the
		an NXP LPC3131 MCU. This OS is built with the arm-nuttx-elf toolchain*.
		STATUS:  This port is complete and mature.

config ARCH_BOARD_EA3152
	bool "Embedded Artists EA3152 Development board"
	depends on ARCH_CHIP_LPC3152
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	---help---
		Embedded Artists EA3152 Development board.  This board is based on the
		an NXP LPC3152 MCU. This OS is built with the arm-nuttx-elf toolchain*.
		STATUS:  This port is has not be exercised well, but since it is
		a simple derivative of the ea3131, it should be fully functional.

config ARCH_BOARD_EAGLE100
	bool "Micromint Eagle-100 Development board"
	depends on ARCH_CHIP_LM3S6918
	select ARCH_HAVE_LEDS
	---help---
		Micromint Eagle-100 Development board.  This board is based on the
		an ARM Cortex-M3 MCU, the Luminary LM3S6918. This OS is built with the
		arm-nuttx-elf toolchain*.  STATUS:  This port is complete and mature.

config ARCH_BOARD_EKKLM3S9B96
	bool "TI/Stellaris EKK-LM3S9B96"
	depends on ARCH_CHIP_LM3S9B96
	select ARCH_HAVE_LEDS
	---help---
		TI/Stellaris EKK-LM3S9B96 board.  This board is based on the
		an EKK-LM3S9B96 which is a Cortex-M3.

config ARCH_BOARD_EZ80F910200KITG
	bool "ZiLOG ez80f910200kitg development kit"
	depends on ARCH_CHIP_EZ80F91
	select ARCH_HAVE_LEDS
	---help---
		ez80Acclaim! Microcontroller.  This port use the ZiLOG ez80f910200kitg
		development kit, eZ80F091 part, and the Zilog ZDS-II Windows command line
		tools.  The development environment is Cygwin under WinXP.

config ARCH_BOARD_EZ80F910200ZCO
	bool "ZiLOG ez80f910200zco development kit"
	depends on ARCH_CHIP_EZ80F91
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	---help---
		ez80Acclaim! Microcontroller.  This port use the Zilog ez80f910200zco
		development kit, eZ80F091 part, and the Zilog ZDS-II Windows command line
		tools.  The development environment is Cygwin under WinXP.

config ARCH_BOARD_FREEDOM_KL25Z
	bool "Freescale Freedom KL25Z"
	depends on ARCH_CHIP_MKL25Z128
	select ARCH_HAVE_LEDS
	---help---
		This is the configuration for the Freescale Freedom KL25Z board.  This
		board has the K25Z120LE3AN chip with a built-in SDA debugger.

config ARCH_BOARD_HYMINI_STM32V
	bool "HY-Mini STM32v board"
	depends on ARCH_CHIP_STM32F103VCT6
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		A configuration for the HY-Mini STM32v board.  This board is based on the
		STM32F103VCT6 chip.

config ARCH_BOARD_LINCOLN60
	bool "Micromint Lincoln 60 board"
	depends on ARCH_CHIP_LPC1769
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		Micromint Lincoln 60 board using the NXP LPC1769 MCU.

config ARCH_BOARD_KWIKSTIK_K40
	bool "FreeScale KwikStik-K40 development board"
	depends on ARCH_CHIP_MK40X256VLQ100
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		Kinetis K40 Cortex-M4 MCU.  This port uses the FreeScale KwikStik-K40
		development board.

config ARCH_BOARD_LM3S6432S2E
	bool "Stellaris RDK-S2E Reference Design Kit"
	depends on ARCH_CHIP_LM3S6432
	select ARCH_HAVE_LEDS
	---help---
		Stellaris RDK-S2E Reference Design Kit and the MDL-S2E Ethernet to
		Serial module.

config ARCH_BOARD_LM3S6965EK
	bool "Stellaris LM3S6965 Evaluation Kit"
	depends on ARCH_CHIP_LM3S6965
	select ARCH_HAVE_LEDS
	---help---
		Stellaris LM3S6965 Evaluation Kit.  This board is based on the
		an ARM Cortex-M3 MCU, the Luminary/TI LM3S6965. This OS is built with the
		arm-nuttx-elf toolchain*.  STATUS:  This port is complete and mature.

config ARCH_BOARD_LM3S8962EK
	bool "Stellaris LMS38962 Evaluation Kit"
	depends on ARCH_CHIP_LM3S8962
	select ARCH_HAVE_LEDS
	---help---
		Stellaris LMS38962 Evaluation Kit.

config ARCH_BOARD_LM4F120_LAUNCHPAD
	bool "Stellaris LM4F120 LaunchPad"
	depends on ARCH_CHIP_LM4F120
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		Stellaris LM4F120 LaunchPad.

config ARCH_BOARD_LPCXPRESSO
	bool "NXP LPCExpresso LPC1768"
	depends on ARCH_CHIP_LPC1768
	select ARCH_HAVE_LEDS
	---help---
		Embedded Artists base board with NXP LPCExpresso LPC1768.  This board
		is based on the NXP LPC1768.  The Code Red toolchain is used by default.

config ARCH_BOARD_LPC4330_XPLORER
	bool "NXG LPC4330-Xplorer"
	depends on ARCH_CHIP_LPC4330FET100
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		NXG Technologoies LPC4330 Xplorer board.  This board is based on the
		LPC4330FET100.  The Code Red toolchain is used by default.

config ARCH_BOARD_M68332EVB
	bool "Motoroloa M68332EVB"
	depends on ARCH_M68332
	---help---
		This is a work in progress for the venerable m68322evb board from
		Motorola. This OS is also built with the arm-nuttx-elf toolchain.  STATUS:
		This port was never completed.

config ARCH_BOARD_MBED
	bool "mbed LCP1768"
	depends on ARCH_CHIP_LPC1768
	select ARCH_HAVE_LEDS
	---help---
		The configurations in this directory support the mbed board (http://mbed.org)
		that features the NXP LPC1768 microcontroller. This OS is also built
		with the arm-nuttx-elf toolchain*.  STATUS:  Contributed.

config ARCH_BOARD_MCU123
	bool "mcu123.com LPC2148 Development Board"
	depends on ARCH_CHIP_LPC2148
	select ARCH_HAVE_LEDS
	---help---
		This port is for the NXP LPC2148 as provided on the mcu123.com
		lpc214x development board. This OS is also built with the arm-nuttx-elf
		toolchain*.  The port supports serial, timer0, spi, and usb.

config ARCH_BOARD_MICROPENDOUS3
	bool "Opendous Micropendous 3 board"
	depends on ARCH_CHIP_AT90USB646 || ARCH_CHIP_AT90USB647 || ARCH_CHIP_AT90USB1286 || ARCH_CHIP_AT90USB1287
	---help---
		This is a port to the Opendous Micropendous 3 board. This board may
		be populated with either an AVR AT90USB646, 647, 1286, or 1287 MCU.
		Support is configured for the AT90USB647.

config ARCH_BOARD_MX1ADS
	bool "Motorola MX1ADS development board"
	depends on ARCH_CHIP_IMX1
	select ARCH_HAVE_LEDS
	---help---
		This is a port to the Motorola MX1ADS development board.  That board
		is based on the Freescale i.MX1 processor.  The i.MX1 is an ARM920T.
		STATUS:  This port is nearly code complete but was never fully
		integrated due to tool-related issues.

config ARCH_BOARD_NE64BADGE
	bool "FEG NE64 /PoE Badge board"
	depends on ARCH_CHIP_MCS92S12NEC64
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	---help---
		Future Electronics Group NE64 /PoE Badge board based on the
		MC9S12NE64 hcs12 cpu.  This port uses the m9s12x GCC toolchain.
		STATUS:  Under development.  The port is code-complete but has
		not yet been fully tested.

config ARCH_BOARD_NTOSD_DM320
	bool "Neuros OSD v1.0 Dev Board"
	depends on ARCH_CHIP_DM320
	select ARCH_HAVE_LEDS
	---help---
		This port uses the Neuros OSD v1.0 Dev Board with a GNU arm-nuttx-elf
		toolchain*: see

		http://wiki.neurostechnology.com/index.php/OSD_1.0_Developer_Home

		There are some differences between the Dev Board and the currently
		available commercial v1.0 Boards.  See

		http://wiki.neurostechnology.com/index.php/OSD_Developer_Board_v1

		NuttX operates on the ARM9EJS of this dual core processor.
		STATUS: This port is code complete, verified, and included in the
		NuttX 0.2.1 release.

config  ARCH_BOARD_NUCLEUS2G
	bool "Nucleus 2G board"
	depends on ARCH_CHIP_LPC1768
	select ARCH_HAVE_LEDS
	---help---
		This port uses the Nucleus 2G board (with Babel CAN board).  This board
		features an NXP LPC1768 processor.  See the 2G website (http://www.2g-eng.com/)
		for more information about the Nucleus 2G.

config ARCH_BOARD_LPC1766STK
	bool "Olimex LPC1766-STK board"
	depends on ARCH_CHIP_LPC1766
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This port uses the Olimex LPC1766-STK board and a GNU GCC toolchain* under
		Linux or Cygwin.  STATUS: Complete and mature.

config ARCH_BOARD_MIRTOO
	bool "Mirtoo PIC32 Module from Dimitech"
	depends on ARCH_CHIP_PIC32MX250F128D
	select ARCH_HAVE_LEDS
	---help---
		This is the port to the DTX1-4000L "Mirtoo" module.  This module uses MicroChip
		PIC32MX250F128D.  See http://www.dimitech.com/ for further information.

config ARCH_BOARD_NUTINY_NUC120
	bool "Nuvoton NuTiny NUC120"
	depends on ARCH_CHIP_NUC120LE3AN
	select ARCH_HAVE_LEDS
	---help---
		This is the port to the Nuvoton NuTiny EVB 120 board.  This board uses a 
		Nuvoton NUC120 chip, specifically the NUC120LE3AN.  See http://www.nuvoton.com/
		for further information.

config ARCH_BOARD_OLIMEXLPC2378
	bool "Olimex-lpc2378 board"
	depends on ARCH_CHIP_LPC2378
	select ARCH_HAVE_LEDS
	---help---
		This port uses the Olimex-lpc2378 board and a GNU arm-nuttx-elf toolchain* under
		Linux or Cygwin.  STATUS: ostest and NSH configurations available.
		This port for the NXP LPC2378 was contributed by Rommel Marcelo.

config ARCH_BOARD_OLIMEX_STRP711
	bool "Olimex STR-P711 board"
	depends on ARCH_CHIP_STR71X
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	---help---
		This port uses the Olimex STR-P711 board and a GNU arm-nuttx-elf toolchain* under
		Linux or Cygwin. See the http://www.olimex.com/dev/str-p711.html" for
		further information.  STATUS: Configurations for the basic OS test and NSH
		are complete and verified.

config ARCH_BOARD_OLIMEX_STM32P107
	bool "Olimex STM32 P107 board"
	depends on ARCH_CHIP_STM32F107VC
	---help---
		This port uses the Olimex STM32 P107 board and a GNU arm-nuttx-elf toolchain* under
		Linux or Cygwin. See the http://www.olimex.com for further information. This
		board features the STMicro STM32F107VC MCU

config ARCH_BOARD_OPEN1788
	bool "Wave Share Open1788"
	depends on ARCH_CHIP_LPC1788
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This port uses the Wave Share Open1788 board. See the
		http://wvshare.com/product/Open1788-Standard.htm for further
		information. This board features the NXP LPC1788 MCU

config ARCH_BOARD_P112
	bool "P112 Z180-based platform"
	depends on ARCH_CHIP_Z8018216FSG
	---help---
		The P112 is notable because it was the first of the hobbyist single board
		computers to reach the production stage. The P112 hobbyist computers
		were relatively widespread and inspired other hobbyist centered home brew
		computing projects such as N8VEM home brew computing project. The P112
		project still maintains many devoted enthusiasts and has an online
		repository of software and other information.

		The P112 computer originated as a commercial product of "D-X Designs Pty
		Ltd" of Australia. They describe the computer as "The P112 is a stand-alone
		8-bit CPU board. Typically running CP/M (tm) or a similar operating system,
		it provides a Z80182 (Z-80 upgrade) CPU with up to 1MB of memory, serial,
		parallel and diskette IO, and realtime clock, in a 3.5-inch drive form factor.
		Powered solely from 5V, it draws 150mA (nominal: not including disk drives)
		with a 16MHz CPU clock. Clock speeds up to 24.576MHz are possible."

		The P112 board was last available new in 1996 by Dave Brooks. In late 2004
		on the Usenet Newsgroup comp.os.cpm, talk about making another run of P112
		boards was discussed. David Griffith decided to produce additional P112 kits
		with Dave Brooks blessing and the assistance of others. In addition Terry
		Gulczynski makes additional P112 derivative hobbyist home brew computers.
		Hal Bower was very active in the mid 1990's on the P112 project and ported
		the "Banked/Portable BIOS".

config ARCH_BOARD_PCBLOGICPIC32MX
	bool "PIC32MX board from PCB Logic Design Co"
	depends on ARCH_CHIP_PIC32MX460F512L
	---help---
		This is the port of NuttX to the PIC32MX board from PCB Logic Design Co.
		This board features the MicroChip PIC32MX460F512L.
		The board is a very simple -- little more than a carrier for the PIC32
		MCU plus voltage regulation, debug interface, and an OTG connector.
		STATUS:  Code complete but testing has been stalled due to tool related problems
		(PICkit 2 does not work with the PIC32).

config ARCH_BOARD_PIC32_STARTERKIT
	bool "Microchip PIC32 Ethernet Starter Kit (DM320004)"
	depends on ARCH_CHIP_PIC32MX795F512L
	select ARCH_HAVE_LEDS
	---help---
		This is the port of NuttX to the Microchip PIC32 Ethernet Starter Kit
		(DM320004) with the Multimedia Expansion Board (MEB, DM320005).
		See www.microchip.com for further information.

config ARCH_BOARD_PIC32_PIC32MX7MMB
	bool "Mikroelektronika PIC32MX7 MMB"
	depends on ARCH_CHIP_PIC32MX795F512L
	select ARCH_HAVE_LEDS
	---help---
		This is the port NuttX to the Mikroelektronika PIC32MX7 Multimedia Board
		(MMB).  See http://www.mikroe.com/ for further information.

config ARCH_BOARD_PIRELLI_DPL10
	bool "Pirelli DPL10 phone"
	depends on ARCH_CHIP_CALYPSO
	---help---
		This directory contains the board support for Pirelli dpl10 phones.  The
		additions were made by Craig Comstock (with help form Alan Carvalho de Assis).

config ARCH_BOARD_PJRC_87C52
	bool "PJRC 87C52 development system"
	depends on ARCH_CHIP_8052
	select ARCH_HAVE_LEDS
	---help---
		8051 Microcontroller.  This port uses the PJRC 87C52 development system
		and the SDCC toolchain.   This port is not quite ready for prime time.

config ARCH_BOARD_QEMU_I486
	bool "Qemu i486 Mode"
	depends on ARCH_X86 || ARCH_I486
	---help---
		Port of NuttX to QEMU in i486 mode.  This port will also run on real i486
		hardwared (Google the Bifferboard).

config ARCH_BOARD_RGMP
	bool "RGMP"
	depends on ARCH_RGMP
	---help---
		RGMP stands for RTOS and GPOS on Multi-Processor.  RGMP is a project for
		running GPOS and RTOS simultaneously on multi-processor platforms. You can
		port your favorite RTOS to RGMP together with an unmodified Linux to form a
		hybrid operating system. This makes your application able to use both RTOS
		and GPOS features.

		See http://rgmp.sourceforge.net/wiki/index.php/Main_Page for further information
		about RGMP.

config ARCH_BOARD_SAM3UEK
	bool "Atmel SAM3U-EK development board"
	depends on ARCH_CHIP_AT91SAM3U4E
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		The port of NuttX to the Atmel SAM3U-EK development board.

config ARCH_BOARD_SAM4L_XPLAINED
	bool "Atmel SAM4L-Xplained Pro development board"
	depends on ARCH_CHIP_ATSAM4LC4C
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		The port of NuttX to the Atmel SAM4L-Xplained Pro development board.

config ARCH_BOARD_SAM4S_XPLAINED
	bool "Atmel SAM4S-Xplained development board"
	depends on ARCH_CHIP_ATSAM4S16C
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		The port of NuttX to the Atmel SAM4S-Xplained development board.

config ARCH_BOARD_SHENZHOU
	bool "Shenzhou STM32F107 board"
	depends on ARCH_CHIP_STM32F107VC
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This port uses the Shenzhou STM32 F107 board and a GNU arm-nuttx-elf toolchain* under
		Linux or Cygwin. See the http://www.armjishu.com for further information. This
		board features the STMicro STM32F107VC MCU

config ARCH_BOARD_SKP16C26
	bool "Renesas SKP16C26 StarterKit"
	depends on ARCH_CHIP_M30262F8
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	---help---
		Renesas M16C processor on the Renesas SKP16C26 StarterKit.  This port
		uses the GNU m32c toolchain.  STATUS:  The port is complete but untested
		due to issues with compiler internal errors.

config ARCH_BOARD_STM32_TINY
	bool "STM32-Tiny board"
	depends on ARCH_CHIP_STM32F103C8
	select ARCH_HAVE_LEDS
	---help---
		A configuration for the STM32 Tiny board. This board is based on a
		STM32F103C8T6 micro-controller chip, and is (always ?) bundled with
		an nRF24L01+ wireless module.

config ARCH_BOARD_STM3210E_EVAL
	bool "STMicro STM3210E-EVAL development board"
	depends on ARCH_CHIP_STM32F103ZET6
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro STM3210E-EVAL development board based on the STMicro STM32F103ZET6
		microcontroller (ARM Cortex-M3).  This port uses the GNU Cortex-M3
		toolchain.

config ARCH_BOARD_STM3220G_EVAL
	bool "STMicro STM3220G-EVAL development board"
	depends on ARCH_CHIP_STM32F207IG
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro STM3220G-EVAL development board based on the STMicro STM32F407IG
		microcontroller (ARM Cortex-M3).

config ARCH_BOARD_STM3240G_EVAL
	bool "STMicro STM3240G-EVAL development board"
	depends on ARCH_CHIP_STM32F407IG
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro STM3240G-EVAL development board based on the STMicro STM32F103ZET6
		microcontroller (ARM Cortex-M4 with FPU).  This port uses a GNU Cortex-M4
		toolchain (such as CodeSourcery).

config ARCH_BOARD_STM32F100RC_GENERIC
	bool "STMicro STM32F100RC generic board"
	depends on ARCH_CHIP_STM32F100RC
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro STM32F100RC generic board.

config ARCH_BOARD_STM32F3_DISCOVERY
	bool "STMicro STM32F3-Discovery board"
	depends on ARCH_CHIP_STM32F303VC
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro STM32F3-Discovery board based on the STMicro STM32F303VCT6 MCU.

config ARCH_BOARD_STM32F4_DISCOVERY
	bool "STMicro STM32F4-Discovery board"
	depends on ARCH_CHIP_STM32F407VG
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro STM32F4-Discovery board based on the STMicro STM32F407VGT6 MCU.

config ARCH_BOARD_STM32L_DISCOVERY
	bool "STMicro STM32L-Discovery board"
	depends on ARCH_CHIP_STM32L152RB
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro STM32L-Discovery board based on the STMicro STM32L152RB MCU.

config ARCH_BOARD_MIKROE_STM32F4
	bool "MikroElektronika Mikromedia for STM32F4 board"
	depends on ARCH_CHIP_STM32F407VG
	---help---
		This is the port NuttX to the Mikroelektronika Mikromedia for STM32F4 Multimedia Board
		(MMB).  See http://www.mikroe.com/ for further information.

config ARCH_BOARD_SUREPIC32MX
	bool "Sure PIC32MX boards"
	depends on ARCH_CHIP_PIC32MX440F512H
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		The "Advanced USB Storage Demo Board," Model DB-DP11215, from Sure
		Electronics (http://www.sureelectronics.net/).  This board features
		the MicroChip PIC32MX440F512H.  See also
		http://www.sureelectronics.net/goods.php?id=1168 for further
		information about the Sure DB-DP11215 board.

config ARCH_BOARD_TEENSY
	bool "PJRC Teensy++ 2.0 board"
	depends on ARCH_CHIP_AT90USB1286
	select ARCH_HAVE_LEDS
	---help---
		This is the port of NuttX to the PJRC Teensy++ 2.0 board.  This board is
		developed by http://pjrc.com/teensy/.  The Teensy++ 2.0 is based
		on an Atmel AT90USB1286 MCU.

config ARCH_BOARD_TWR_K60N512
	bool "FreeScale TWR-K60N512d evelopment board"
	depends on ARCH_CHIP_MK60N512VMD100
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		Kinetis K60 Cortex-M4 MCU.  This port uses the FreeScale TWR-K60N512
		development board.

config ARCH_BOARD_UBW32
	bool "UBW32 v2.4 board from Sparkfun"
	depends on ARCH_CHIP_PIC32MX460F512L
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This is the port to the Sparkfun UBW32 board.  This port uses the original v2.4
		board which is based on the MicroChip PIC32MX460F512L.  See
		http://www.sparkfun.com/products/8971.  This older version has been replaced
		with this board http://www.sparkfun.com/products/9713. See also
		http://www.schmalzhaus.com/UBW32/.

config ARCH_BOARD_US7032EVB1
	bool "Hitachi SH-1/US7032EVB1 board"
	depends on ARCH_CHIP_SH7032
	select ARCH_HAVE_LEDS
	---help---
		This is a port of the Hitachi SH-1 on the Hitachi SH-1/US7032EVB1 board.
		STATUS:  Work has just began on this port.

config ARCH_BOARD_VSN
	bool "SOTEL NetClamps VSN sensor network platform"
	depends on ARCH_CHIP_STM32F103RET6
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	---help---
		ISOTEL NetClamps VSN V1.2 ready2go sensor network platform based on the
		STMicro STM32F103RET6.  Contributed by Uros Platise.  See
		http://isotel.eu/NetClamps/

config ARCH_BOARD_XTRS
	bool "XTRS TRS80 Model 3 emulation"
	depends on ARCH_CHIP_Z80
	select ARCH_HAVE_UART
	---help---
		TRS80 Model 3.  This port uses a vintage computer based on the Z80.
		An emulator for this computer is available to run TRS80 programs on a
		linux platform (http://www.tim-mann.org/xtrs.html).

config ARCH_BOARD_Z16F2800100ZCOG
	bool "Zilog Z16F2800100ZCOG Development Kit"
	depends on ARCH_CHIP_Z16F2811
	select ARCH_HAVE_LEDS
	---help---
		z16f Microcontroller.  This port use the ZiLIG z16f2800100zcog
		development kit and the Zilog ZDS-II Windows command line tools.  The
		development environment is Cygwin under WinXP.

config ARCH_BOARD_Z80SIM
	bool "Z80 Instruction Set Simulator"
	depends on ARCH_CHIP_Z80
	select ARCH_HAVE_UART
	---help---
		z80 Microcontroller.  This port uses a Z80 instruction set simulator.
		That simulator can be found in the NuttX GIT at
		http://sourceforge.net/p/nuttx/git/ci/master/tree/misc/sims/z80sim.
		This port also uses the SDCC toolchain (http://sdcc.sourceforge.net/")
		(verified with version 2.6.0).

config ARCH_BOARD_Z8ENCORE000ZCO
	bool "ZiLOG Z8ENCORE000ZCO Development Kit"
	depends on ARCH_CHIP_Z8F6403
	select ARCH_HAVE_LEDS
	---help---
		z8Encore! Microcontroller.  This port use the ZiLOG Z8ENCORE000ZCO
		development kit, Z8F6403 part, and the Zilog ZDS-II Windows command line
		tools.  The development environment is Cygwin under WinXP.

config ARCH_BOARD_Z8F64200100KIT
	bool "ZiLOG Z8F64200100KIT Development Kit"
	depends on ARCH_CHIP_Z8F6423
	select ARCH_HAVE_LEDS
	---help---
		z8Encore! Microcontroller.  This port use the Zilog Z8F64200100KIT
		development kit, Z8F6423 part, and the Zilog ZDS-II Windows command line
		tools.  The development environment is Cygwin under WinXP.

config ARCH_BOARD_ZP214XPA
	bool "The0.net LPC2148 Development Board"
	depends on ARCH_CHIP_LPC2148
	---help---
		This port is for the NXP LPC2148 as provided on the The0.net
		ZPA213X/4XPA development board. Includes support for the
		UG-2864AMBAG01 OLED also from The0.net

config ARCH_BOARD_ZKITARM
	bool "Zilogic ZKit-ARM-1769 Development Kit"
	depends on ARCH_CHIP_LPC1768
	select ARCH_HAVE_LEDS
	---help---
		Zilogic System's ARM development Kit, ZKIT-ARM-1769.  This board is based
		on the NXP LPC1769.  The Nuttx Buildroot toolchain is used by default.

config ARCH_BOARD_SIM
	bool "User mode simulation"
	depends on ARCH_SIM
	---help---
		A user-mode port of NuttX to the x86 Linux/Cygwin 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.

config ARCH_BOARD_CUSTOM
	bool "Custom development board"
	---help---
		Select this option if there is no directory for the board under configs/.

		Don't see the board you want?  You must first select the exact MCU part
		number, then the boards supporting that part will be available for selection.

endchoice

config ARCH_BOARD
	string
	default "amber"               if ARCH_BOARD_AMBER
	default "avr32dev1"           if ARCH_BOARD_AVR32DEV1
	default "c5471evm"            if ARCH_BOARD_C5471EVM
	default "compal_e88"          if ARCH_BOARD_COMPALE88
	default "compal_e99"          if ARCH_BOARD_COMPALE99
	default "demo9s12ne64"        if ARCH_BOARD_DEMOS92S12NEC64
	default "ea3131"              if ARCH_BOARD_EA3131
	default "ea3152"              if ARCH_BOARD_EA3152
	default "eagle100"            if ARCH_BOARD_EAGLE100
	default "ekk-lm3s9b96"        if ARCH_BOARD_EKKLM3S9B96
	default "ez80f910200kitg"     if ARCH_BOARD_EZ80F910200KITG
	default "ez80f910200zco"      if ARCH_BOARD_EZ80F910200ZCO
	default "fire-stm32v2"        if ARCH_BOARD_FIRE_STM32
	default "freedom-kl25z"        if ARCH_BOARD_FREEDOM_KL25Z
	default "hymini-stm32v"       if ARCH_BOARD_HYMINI_STM32V
	default "kwikstik-k40"        if ARCH_BOARD_KWIKSTIK_K40
	default "lincoln60"           if ARCH_BOARD_LINCOLN60
	default "lm3s6432-s2e"        if ARCH_BOARD_LM3S6432S2E
	default "lm3s6965-ek"         if ARCH_BOARD_LM3S6965EK
	default "lm3s8962-ek"         if ARCH_BOARD_LM3S8962EK
	default "lm4f120-launchpad"   if ARCH_BOARD_LM4F120_LAUNCHPAD
	default "lpc4330-xplorer"     if ARCH_BOARD_LPC4330_XPLORER
	default "lpcxpresso-lpc1768"  if ARCH_BOARD_LPCXPRESSO
	default "m68322evb"           if ARCH_BOARD_M68332EVB
	default "mbed"                if ARCH_BOARD_MBED
	default "mcu123-lpc214x"      if ARCH_BOARD_MCU123
	default "micropendous3"       if ARCH_BOARD_MICROPENDOUS3
	default "mirtoo"              if ARCH_BOARD_MIRTOO
	default "mx1ads"              if ARCH_BOARD_MX1ADS
	default "ne64badge"           if ARCH_BOARD_NE64BADGE
	default "ntosd-dm320"         if ARCH_BOARD_NTOSD_DM320
	default "nucleus2g"           if ARCH_BOARD_NUCLEUS2G
	default "nutiny-nuc120"       if ARCH_BOARD_NUTINY_NUC120
	default "olimex-lpc1766stk"   if ARCH_BOARD_LPC1766STK
	default "olimex-lpc2378"      if ARCH_BOARD_OLIMEXLPC2378
	default "olimex-stm32-p107"   if ARCH_BOARD_OLIMEX_STM32P107
	default "olimex-strp711"      if ARCH_BOARD_OLIMEX_STRP711
	default "open1788"            if ARCH_BOARD_OPEN1788
	default "p112"                if ARCH_BOARD_P112
	default "pcblogic-pic32mx"    if ARCH_BOARD_PCBLOGICPIC32MX
	default "pic32-starterkit"    if ARCH_BOARD_PIC32_STARTERKIT
	default "pic32mx7mmb"         if ARCH_BOARD_PIC32_PIC32MX7MMB
	default "pirelli_dpl10"       if ARCH_BOARD_PIRELLI_DPL10
	default "pjrc-8051"           if ARCH_BOARD_PJRC_87C52
	default "qemu-i486"           if ARCH_BOARD_QEMU_I486
	default "rgmp"                if ARCH_BOARD_RGMP
	default "sam3u-ek"            if ARCH_BOARD_SAM3UEK
	default "sam4l-xplained"      if ARCH_BOARD_SAM4L_XPLAINED
	default "sam4s-xplained"      if ARCH_BOARD_SAM4S_XPLAINED
	default "shenzhou"            if ARCH_BOARD_SHENZHOU
	default "skp16c26"            if ARCH_BOARD_SKP16C26
	default "stm32_tiny"          if ARCH_BOARD_STM32_TINY
	default "stm3210e-eval"       if ARCH_BOARD_STM3210E_EVAL
	default "stm3220g-eval"       if ARCH_BOARD_STM3220G_EVAL
	default "stm3240g-eval"       if ARCH_BOARD_STM3240G_EVAL
	default "stm32f100rc_generic" if ARCH_BOARD_STM32F100RC_GENERIC
	default "stm32f3discovery"    if ARCH_BOARD_STM32F3_DISCOVERY
	default "stm32f4discovery"    if ARCH_BOARD_STM32F4_DISCOVERY
	default "stm32ldiscovery"     if ARCH_BOARD_STM32L_DISCOVERY
	default "mikroe-stm32f4"      if ARCH_BOARD_MIKROE_STM32F4
	default "sure-pic32mx"        if ARCH_BOARD_SUREPIC32MX
	default "teensy"              if ARCH_BOARD_TEENSY
	default "twr-k60n512"         if ARCH_BOARD_TWR_K60N512
	default "ubw32"               if ARCH_BOARD_UBW32
	default "us7032evb1"          if ARCH_BOARD_US7032EVB1
	default "vsn"                 if ARCH_BOARD_VSN
	default "xtrs"                if ARCH_BOARD_XTRS
	default "z16f2800100zcog"     if ARCH_BOARD_Z16F2800100ZCOG
	default "z80sim"              if ARCH_BOARD_Z80SIM
	default "z8encore000zco"      if ARCH_BOARD_Z8ENCORE000ZCO
	default "z8f64200100kit"      if ARCH_BOARD_Z8F64200100KIT
	default "zp214xpa"            if ARCH_BOARD_ZP214XPA
	default "zkit-arm-1769"       if ARCH_BOARD_ZKITARM
	default "sim"                 if ARCH_BOARD_SIM
	default ""                    if ARCH_BOARD_CUSTOM

comment "Common Board Options"

config ARCH_HAVE_LEDS
	bool

config ARCH_LEDS
	bool "Board LED support"
	default y
	depends on ARCH_HAVE_LEDS
	---help---
		Use board LEDs to show NuttX execution status state. Unique to boards that have LEDs

config ARCH_HAVE_BUTTONS
	bool

config ARCH_BUTTONS
	bool "Board button support"
	default n
	depends on ARCH_HAVE_BUTTONS
	---help---
		"Support interfaces to use buttons provided by the board."

config ARCH_HAVE_IRQBUTTONS
	bool

config ARCH_IRQBUTTONS
	bool "Button interrupt support"
	default n
	depends on ARCH_BUTTONS && ARCH_HAVE_IRQBUTTONS
	---help---
		"Support interrupts on button presses and releases."

config NSH_MMCSDMINOR
	int "MMC/SD minor number"
	default 0
	depends on NSH_LIBRARY && MMCSD
	---help---
		If board-specific NSH start-up logic needs to mount an MMC/SD device, then the setting should be provided to identify the MMC/SD minor device number (i.e., the N in /dev/mmcsdN).  Default 0

config NSH_MMCSDSLOTNO
	int "MMC/SD slot number"
	default 0
	depends on NSH_LIBRARY && MMCSD
	---help---
		If board-specific NSH start-up supports more than one MMC/SD slot, then this setting should be provided to indicate which slot should be used.  Default: 0.

config NSH_MMCSDSPIPORTNO
	int "MMC/SD SPI device number"
	default 0
	depends on NSH_LIBRARY && MMCSD && MMCSD_SPI
	---help---
		If board-specif NSH start-up logic will mount an SPI-based MMC/SD volume, then this setting may be needed to tell the board logic which SPI bus to use.  Default: 0 (meaning is board-specific).

comment "Board-Specific Options"

if ARCH_BOARD_AMBER
source "configs/amber/Kconfig"
endif
if ARCH_BOARD_AVR32DEV1
source "configs/avr32dev1/Kconfig"
endif
if ARCH_BOARD_C5471EVM
source "configs/c5471evm/Kconfig"
endif
if ARCH_BOARD_COMPALE88
source "configs/compal_e88/Kconfig"
endif
if ARCH_BOARD_COMPALE99
source "configs/compal_e99/Kconfig"
endif
if ARCH_BOARD_DEMOS92S12NEC64
source "configs/demo9s12ne64/Kconfig"
endif
if ARCH_BOARD_EA3131
source "configs/ea3131/Kconfig"
endif
if ARCH_BOARD_EA3152
source "configs/ea3152/Kconfig"
endif
if ARCH_BOARD_EAGLE100
source "configs/eagle100/Kconfig"
endif
if ARCH_BOARD_EKKLM3S9B96
source "configs/ekk-lm3s9b96/Kconfig"
endif
if ARCH_BOARD_EZ80F910200KITG
source "configs/ez80f910200kitg/Kconfig"
endif
if ARCH_BOARD_EZ80F910200ZCO
source "configs/ez80f910200zco/Kconfig"
endif
if ARCH_BOARD_FIRE_STM32
source "configs/fire-stm32v2/Kconfig"
endif
if ARCH_BOARD_HYMINI_STM32V
source "configs/hymini-stm32v/Kconfig"
endif
if ARCH_BOARD_KWIKSTIK_K40
source "configs/kwikstik-k40/Kconfig"
endif
if ARCH_BOARD_LINCOLN60
source "configs/lincoln60/Kconfig"
endif
if ARCH_BOARD_LM3S6432S2E
source "configs/lm3s6432-s2e/Kconfig"
endif
if ARCH_BOARD_LM3S6965EK
source "configs/lm3s6965-ek/Kconfig"
endif
if ARCH_BOARD_LM3S8962EK
source "configs/lm3s8962-ek/Kconfig"
endif
if ARCH_BOARD_LM3S8962EK
source "configs/lm4f120-launchpad/Kconfig"
endif
if ARCH_BOARD_LPC4330_XPLORER
source "configs/lpc4330-xplorer/Kconfig"
endif
if ARCH_BOARD_LPCXPRESSO
source "configs/lpcxpresso-lpc1768/Kconfig"
endif
if ARCH_BOARD_M68332EVB
source "configs/m68332evb/Kconfig"
endif
if ARCH_BOARD_MBED
source "configs/mbed/Kconfig"
endif
if ARCH_BOARD_MCU123
source "configs/mcu123-lpc214x/Kconfig"
endif
if ARCH_BOARD_MICROPENDOUS3
source "configs/micropendous3/Kconfig"
endif
if ARCH_BOARD_MIKROE_STM32F4
source "configs/mikroe-stm32f4/Kconfig"
endif
if ARCH_BOARD_MIRTOO
source "configs/mirtoo/Kconfig"
endif
if ARCH_BOARD_MX1ADS
source "configs/mx1ads/Kconfig"
endif
if ARCH_BOARD_NE64BADGE
source "configs/ne64badge/Kconfig"
endif
if ARCH_BOARD_NTOSD_DM320
source "configs/ntosd-dm320/Kconfig"
endif
if ARCH_BOARD_NUCLEUS2G
source "configs/nucleus2g/Kconfig"
endif
if ARCH_BOARD_NUTINY_NUC120
source "configs/nutiny-nuc120/Kconfig"
endif
if ARCH_BOARD_LPC1766STK
source "configs/olimex-lpc1766stk/Kconfig"
endif
if ARCH_BOARD_OLIMEXLPC2378
source "configs/olimex-lpc2378/Kconfig"
endif
if ARCH_BOARD_OLIMEX_STM32P107
source "configs/olimex-stm32-p107/Kconfig"
endif
if ARCH_BOARD_OLIMEX_STRP711
source "configs/olimex-strp711/Kconfig"
endif
if ARCH_BOARD_OPEN1788
source "configs/open1788/Kconfig"
endif
if ARCH_BOARD_PCBLOGICPIC32MX
source "configs/pcblogic-pic32mx/Kconfig"
endif
if ARCH_BOARD_PIC32_STARTERKIT
source "configs/pic32-starterkit/Kconfig"
endif
if ARCH_BOARD_PIC32_PIC32MX7MMB
source "configs/pic32mx7mmb/Kconfig"
endif
if ARCH_BOARD_PIRELLI_DPL10
source "configs/pirelli_dpl10/Kconfig"
endif
if ARCH_BOARD_PJRC_87C52
source "configs/pjrc-8051/Kconfig"
endif
if ARCH_BOARD_QEMU_I486
source "configs/qemu-i486/Kconfig"
endif
if ARCH_BOARD_RGMP
source "configs/rgmp/Kconfig"
endif
if ARCH_BOARD_SAM3UEK
source "configs/sam3u-ek/Kconfig"
endif
if ARCH_BOARD_SAM4L_XPLAINED
source "configs/sam4l-xplained/Kconfig"
endif
if ARCH_BOARD_SAM4S_XPLAINED
source "configs/sam4s-xplained/Kconfig"
endif
if ARCH_BOARD_SHENZHOU
source "configs/shenzhou/Kconfig"
endif
if ARCH_BOARD_SKP16C26
source "configs/skp16c26/Kconfig"
endif
if ARCH_BOARD_STM32_TINY
source "configs/stm32_tiny/Kconfig"
endif
if ARCH_BOARD_STM3210E_EVAL
source "configs/stm3210e-eval/Kconfig"
endif
if ARCH_BOARD_STM3220G_EVAL
source "configs/stm3220g-eval/Kconfig"
endif
if ARCH_BOARD_STM3240G_EVAL
source "configs/stm3240g-eval/Kconfig"
endif
if ARCH_BOARD_STM32F100RC_GENERIC
source "configs/stm32f100rc_generic/Kconfig"
endif
if ARCH_BOARD_STM32F4_DISCOVERY
source "configs/stm32f4discovery/Kconfig"
endif
if ARCH_BOARD_STM32L_DISCOVERY
source "configs/stm32ldiscovery/Kconfig"
endif
if ARCH_BOARD_SUREPIC32MX
source "configs/sure-pic32mx/Kconfig"
endif
if ARCH_BOARD_TEENSY
source "configs/teensy/Kconfig"
endif
if ARCH_BOARD_TWR_K60N512
source "configs/twr-k60n512/Kconfig"
endif
if ARCH_BOARD_UBW32
source "configs/ubw32/Kconfig"
endif
if ARCH_BOARD_US7032EVB1
source "configs/us7032evb1/Kconfig"
endif
if ARCH_BOARD_VSN
source "configs/vsn/Kconfig"
endif
if ARCH_BOARD_XTRS
source "configs/xtrs/Kconfig"
endif
if ARCH_BOARD_Z16F2800100ZCOG
source "configs/z16f2800100zcog/Kconfig"
endif
if ARCH_BOARD_Z80SIM
source "configs/z80sim/Kconfig"
endif
if ARCH_BOARD_Z8ENCORE000ZCO
source "configs/z8encore000zco/Kconfig"
endif
if ARCH_BOARD_Z8F64200100KIT
source "configs/z8f64200100kit/Kconfig"
endif
if ARCH_BOARD_ZP214XPA
source "configs/zp214xpa/Kconfig"
endif
if ARCH_BOARD_ZKITARM
source "configs/zkit-arm-1769/Kconfig"
endif
if ARCH_BOARD_SIM
source "configs/sim/Kconfig"
endif
