#
# For a description of the syntax of this configuration file,
# see the file kconfig-language.txt in the NuttX tools repository.
#

choice
	prompt "Select target board"
	default ARCH_BOARD_CUSTOM
	---help---
		Select the board hosting the architecture.  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_ARDUINO_MEGA2560
	bool "Arduino Mega 2560"
	depends on ARCH_CHIP_ATMEGA2560
	---help---
		This option selects the Arduino Mega 2560 board featuring the Atmel
		Atmega2560 MCU running at 16 MHz.

config ARCH_BOARD_ARDUINO_DUE
	bool "Arduino Due"
	depends on ARCH_CHIP_ATSAM3X8E
	select ARCH_HAVE_LEDS
	---help---
		This options selects the Arduino DUE board featuring the Atmel
		ATSAM3X8E MCU running at 84 MHz.

config ARCH_BOARD_ARDUINO_M0
	bool "Arduino M0"
	depends on ARCH_CHIP_SAMD21G18A
	select ARCH_HAVE_LEDS
	---help---
		This options selects the Arduino M0 board featuring the Atmel
		ATSAMD21 MCU.

config ARCH_BOARD_ARTY_A7
	bool "DIGILENT ARTY_A7 board"
	depends on ARCH_CHIP_LITEX
	---help---
		This is the board configuration for the port of NuttX to the Digilent ARTY A7
		board.  This board features the RISC-V litex vexriscv softcore

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_AXOLOTI
	bool "Axoloti board"
	depends on ARCH_CHIP_STM32F427I
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		Axoloti synthesizer board based on the STMicro STM32F427IGH6 MCU.
		See: http://www.axoloti.com/

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_CLICKER2_STM32
	bool "Mikroe Clicker2 STM32"
	depends on ARCH_CHIP_STM32F407VG
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		Mikroe Clicker2 STM32 board based on the STMicro STM32F407VGT6 MCU.

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

config ARCH_BOARD_DEMOS92S12NEC64
	bool "NXP/FreeScale DMO9S12NE64 board"
	depends on ARCH_CHIP_MCS92S12NEC64
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	---help---
	NXP/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_DK_TM4C129X
	bool "Tiva DK-TM4C129x Connected Development Kit"
	depends on ARCH_CHIP_TM4C129XNCZAD
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		Tiva DK-TM4C129x Connected Development Kit featuring the
		TM4C129XNCZAD MCU.

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_EFM32G8XXSTK
	bool "EFM32 Gecko Starter Kit"
	depends on ARCH_CHIP_EFM32G890F128
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	---help---
		This option selects the EFM32 Gecko Starter Kit (EFM32-G8XX-STK).

config ARCH_BOARD_EFM32GG_STK3700
	bool "EFM32 Giant Gecko Starter Kit"
	depends on ARCH_CHIP_EFM32GG990F1024
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	---help---
		This option selects the EFM32 Giant Gecko Starter Kit (EFM32GG-STK3700).

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_QUICKFEATHER
	bool "EOS S3 QuickFeather"
	depends on ARCH_CHIP_EOSS3
	select ARCH_HAVE_LEDS
	---help---
		QuickLogic EOS S3 QuickFeather board. This is the feather form factor
		low cost development board.  This includes 16-Mbit external flash,
		MC3635 accelerometer, DPS310 pressure sensor, IM69D130 PDM microphone,
		internal programmable FPGA fabric.

config ARCH_BOARD_ESP32CORE
	bool "Espressif ESP32 Core board V2"
	depends on ARCH_CHIP_ESP32
	select ARCH_HAVE_LEDS
	---help---
		The ESP32 is a dual-core system from Espressif with two Harvard
		architecture Xtensa LX6 CPUs. All embedded memory, external memory
		and peripherals are located on the data bus and/or the instruction
		bus of these CPUs. With some minor exceptions, the address mapping
		of two CPUs is symmetric, meaning they use the same addresses to
		access the same memory.

config ARCH_BOARD_EZ80F910200KITG
	bool "ZiLOG ez80f910200kitg development kit"
	depends on ARCH_CHIP_EZ80F91
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	---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_FIRE_STM32
	bool "M3 Wildfire STM32 board"
	depends on ARCH_CHIP_STM32F103VE
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		Support for the M3 Wildfire STM32 board.  This board is based on the
		STM32F103VET6 chip.  See http://firestm32.taobao.com .  Version 2
		and 3 of the boards are supported but only version 2 has been
		tested.

config ARCH_BOARD_FLIPNCLICK_PIC32MZ
	bool "Mikroe Flip&Click PIC32MZ"
	depends on ARCH_CHIP_PIC32MZ2048EFH
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This options selects the Mikroe Flip&Click PIC32MZ board.  This
		board is an chipKit Arduino-compatible board (but can also be used
		with the Mikroe bootloader).  It has with four Mikroe Click bus
		interfaces in addition to standard Arduino connectors.  This board
		features the Microchip PIC32MZ2048EFH100 MCU running at 200 MHz
		(252Mhz capable).

config ARCH_BOARD_FLIPNCLICK_SAM3X
	bool "Mikroe Flip&Click SAM3X"
	depends on ARCH_CHIP_ATSAM3X8E
	select ARCH_HAVE_LEDS
	---help---
		This options selects the Mikroe Flip&Click STM32X board.  This board
		is an Arduino-Due work-alike with four Mikroe Click bus interfaces.
		Like the Arduino DUE, this board features the Atmel ATSAM3X8E MCU
		running at 84 MHz.

config ARCH_BOARD_FREEDOM_K28F
	bool "NXP Freedom-k28f development board"
	depends on ARCH_CHIP_MK28FN2M0VMI15
	select ARCH_HAVE_LEDS if !RGBLED
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	select KINETIS_SDHC_PULLUP if KINETIS_SDHC # REVISIT
	---help---
		development board.
		This port uses the NXP/FreeScale FREEDOM-K28F development board. This
		board uses the Kinetis K28F MK28FN2M0VMI15 Cortex-M4 MCU.

config ARCH_BOARD_FREEDOM_K64F
	bool "NXP Freedom-k64f development board"
	depends on ARCH_CHIP_MK64FN1M0VLL12
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	select KINETIS_SDHC_PULLUP if KINETIS_SDHC
	---help---
		development board.
		This port uses the NXP/FreeScale FREEDOM-K64F development board. This
		board uses the Kinetis K64 MK64FN1M0VLL12 Cortex-M4 MCU.

config ARCH_BOARD_FREEDOM_K66F
	bool "NXP Freedom-k66f development board"
	depends on ARCH_CHIP_MK66FN2M0VMD18
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	select KINETIS_SDHC_PULLUP if KINETIS_SDHC
	---help---
		development board.
		This port uses the NXP/FreeScale FREEDOM-K66F development board. This
		board uses the Kinetis K66 MK66FN2M0VMD18 Cortex-M4 MCU.

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

config ARCH_BOARD_FREEDOM_KL26Z
	bool "NXP/FreeScale Freedom KL26Z"
	depends on ARCH_CHIP_MKL26Z128
	select ARCH_HAVE_LEDS
	---help---
		This is the configuration for the NXP/FreeScale Freedom KL26Z board.  This
		board has the K26Z128VLH4 chip with a built-in SDA debugger.

config ARCH_BOARD_GAPUINO
	bool "GWT gapuino board"
	depends on ARCH_CHIP_GAP8
	select UART_SERIALDRIVER
	---help---
		NuttX port for gapuino, a GAP8 evaluation board.

config ARCH_BOARD_HIFIVE1_REVB
	bool "HiFive1 Rev B board"
	depends on ARCH_CHIP_FE310
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This is the board configuration for the port of NuttX to the SiFive HiFive1
		Rev B board.  This board features the RISC-V FE310-G002

config ARCH_BOARD_HYMINI_STM32V
	bool "HY-Mini STM32v board"
	depends on ARCH_CHIP_STM32F103VC
	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_IMXRT1020_EVK
	bool "NXP i.MX RT 1020 EVK"
	depends on ARCH_CHIP_MIMXRT1021DAG5A
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This is the board configuration for the port of NuttX to the NXP i.MXRT
		evaluation kit, MIMXRT1020-EVKB.  This board features the MIMXRT1021DAG5A MCU.

config ARCH_BOARD_IMXRT1050_EVK
	bool "NXP i.MX RT 1050 EVK"
	depends on ARCH_CHIP_MIMXRT1052DVL6A
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This is the board configuration for the port of NuttX to the NXP i.MXRT
		evaluation kit, MIMXRT1050-EVKB.  This board features the MIMXRT1052DVL6A MCU.

config ARCH_BOARD_IMXRT1060_EVK
	bool "NXP i.MX RT 1060 EVK"
	depends on ARCH_CHIP_MIMXRT1062DVL6A
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This is the board configuration for the port of NuttX to the NXP i.MXRT
		evaluation kit, MIMXRT1060-EVK.  This board features the MIMXRT1062DVL6A MCU.

config ARCH_BOARD_LC823450_XGEVK
	bool "ON Semiconductor LC823450-XGEVK development board"
	depends on ARCH_CHIP_LC823450
	select ARCH_HAVE_LEDS
	---help---
		This port uses the ON Semiconductor LC823450-XGEVK development board.

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 "NXP/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 NXP/FreeScale KwikStik-K40
		development board.

config ARCH_BOARD_LAUNCHXL_CC1310
	bool "TI LaunchXL-CC1310"
	depends on ARCH_CHIP_CC1310
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		TI SimpleLink CC1310 LaunchPad Evaluation Kit (LAUNCHXL-CC1310)
		featuring the SimpleLinkCC1310 chip.  This board features the
		CC1310F128 part with 128Kb of FLASH and 20Kb of SRAM.

config ARCH_BOARD_LAUNCHXL_CC1312R1
	bool "TI LaunchXL-CC1312R1"
	depends on ARCH_CHIP_CC1312R1
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		TI SimpleLink CC1312R1 LaunchPad Evaluation Kit (LAUNCHXL-CC1312R1)
		featuring the SimpleLinkCC1312R1 chip.

config ARCH_BOARD_LAUNCHXL_TMS57004
	bool "TI LaunchXL-TMS57004"
	depends on ARCH_CHIP_TMS570LS0432PZ
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		TI Hercules TMS570LS04x/03x LaunchPad Evaluation Kit (LAUNCHXL-
		TMS57004) featuring the Hercules TMS570LS0432PZ chip.

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_LPCXPRESSO_LPC54628
	bool "NXP LPCXpresso LPC54628"
	depends on ARCH_CHIP_LPC54628
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		LPCXpresso LPC54626 board featuring the NXP LPC54628 MCU.

config ARCH_BOARD_BAMBINO_200E
	bool "Micromint Bambino 200E"
	depends on ARCH_CHIP_LPC4330FBD144
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		Micromint Bambino board. This board is based on the LPC4330FBD144.

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_LPC4088_DEVKIT
	bool "LPC4088 Developer's Kit"
	depends on ARCH_CHIP_LPC4088
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		Embedded Artists LPC4088 Developer's Kit. See
		https://www.embeddedartists.com/products/lpc4088-developers-kit/
		for further information. This board uses the NXP LPC4088FET208 MCU.

config ARCH_BOARD_LPC4088_QUICKSTART
	bool "LPC4088 QuickStart Board"
	depends on ARCH_CHIP_LPC4088
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		Embedded Artists LPC4088 QuickStart Board. See
		https://www.embeddedartists.com/products/lpc4088-quickstart-board/
		for further information. This board uses the NXP LPC4088FET208 MCU.

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 Technologies LPC4330 Xplorer board.  This board is based on the
		LPC4330FET100.  The Code Red toolchain is used by default.

config ARCH_BOARD_LPC4337_WS
	bool "WaveShare LPC4337-WS"
	depends on ARCH_CHIP_LPC4337JBD144
	---help---
		The WaveShare LPC4337-ws board featuring the NXP LPC4337JBD144 MCU.

config ARCH_BOARD_LPC4357_EVB
	bool "NXP LPC4357-EVB"
	depends on ARCH_CHIP_LPC4357FET256
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		NXP Technologies LPC4357 EVB board.  This board is based on the
		LPC4357FET256.

config ARCH_BOARD_LPC4370_LINK2
	bool "NXP LPC4370-Link2"
	depends on ARCH_CHIP_LPC4370FET100
	select ARCH_HAVE_LEDS
	---help---
		NXP LPC4370 Link2 board.  This board is based on the
		LPC4370FET100.  The Code Red toolchain is used by default.

config ARCH_BOARD_LX_CPU
	bool "PiKRON LX_CPU"
	depends on ARCH_CHIP_LPC1788 || ARCH_CHIP_LPC4088
	select ARCH_HAVE_LEDS
	---help---
		This port uses the PiKRON LX_CPU board. See the
		http://pikron.com/pages/products/cpu_boards/lx_cpu.html
		for further information.  This board features the NXP LPC4088
		(compatible with LPC1788) and Xilinx Spartan 6 XC6SLX9

config ARCH_BOARD_MAIX_BIT
	bool "Sipeed Maix Bit board"
	depends on ARCH_CHIP_K210
	select ARCH_HAVE_LEDS if !K210_WITH_QEMU
	---help---
		This is the board configuration for the port of NuttX to the
		Sipeed Maix Bit board. This board features the RISC-V K210

config ARCH_BOARD_MAX32660_EVSYS
	bool "Maxim Integrated MAX32660-EVSYS"
	depends on ARCH_CHIP_MAX32660
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This option enables support the Maxim Integrated MAX32660-EVSYS
		board.

config ARCH_BOARD_MAKERLISP
	bool "MakerLisp"
	depends on ARCH_CHIP_EZ80F91
	select ARCH_HAVE_LEDS
	---help---
		ez80Acclaim! Microcontroller.  This port use the MakerLisp machine
		based on an eZ80F091 part, and the Zilog ZDS-II Windows command line
		tools.  The development environment is Cygwin under Windows. A
		Windows native development environment is available but has not
		been verified.

config ARCH_BOARD_MAPLE
	bool "maple board"
	depends on ARCH_CHIP_STM32F103RB || ARCH_CHIP_STM32F103CB
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		A configuration for the LeafLab's Maple and Maple Mini boards.
		These boards are based on the STM32F103RBT6 chip for the standard
		version and on the STM32F103CBT6 for the mini version
		(See http://leaflabs.com/docs/hardware/maple.html)

config ARCH_BOARD_MBED
	bool "mbed LCP1768"
	depends on ARCH_CHIP_LPC1768
	select ARCH_HAVE_LEDS
	---help---
		This option enables 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_MCB1700
	bool "Keil MCB1700"
	depends on ARCH_CHIP_LPC1768
	select ARCH_HAVE_LEDS
	---help---
		The configurations in this directory support the Keil MCB1700.

config ARCH_BOARD_MCU123_LPC214X
	bool "mcu123.com LPC2148 Development Board"
	depends on ARCH_CHIP_LPC214X
	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_METRO_M4
	bool "Adafruit M4 Metro"
	depends on ARCH_CHIP_SAMD51J19
	select ARCH_HAVE_LEDS
	---help---
	---help---
		This configuration is the port of NuttX to the Adafruit Metro M4.
		The Metro M4 uses a Arduino form factor and and pinout.  It's powered
		with an ATSAMD51J19

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_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_MISOC_QEMU
	bool "Qemu LM32 demo"
	depends on ARCH_CHIP_LM32
	---help---
		This configuration is port to NuttX running on a Qemu LM32 system.
		You can find the Qemu setup at https://bitbucket.org/key2/qemu

config ARCH_BOARD_MISOC_VERILATOR
	bool "Verilator Misoc demo"
	depends on ARCH_CHIP_LM32 || ARCH_CHIP_MINERVA
	---help---
		This configuration is port to NuttX running on Verilator.

config ARCH_BOARD_MOTEINO_MEGA
	bool "LowPowerLab MoteinoMEGA"
	depends on ARCH_CHIP_ATMEGA1284P
	select ARCH_HAVE_LEDS
	---help---
		This is placeholder for the LowPowerLab MoteinoMEGA that is based
		on the Atmel AVR ATMega1284P MCU.  There is not much there yet and what is
		there is untested due to tool-related issues.

config ARCH_BOARD_MOXA
	bool "Moxa board"
	depends on ARCH_CHIP_MOXART
	---help---
		Moxa

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_NRF52832_DK
	bool "Nordic nRF52832 Development Kit (PCA10040)"
	depends on ARCH_CHIP_NRF52
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	---help---
		This option selects the Nordic nRF52832 Development Kit (PCA10040)

config ARCH_BOARD_NRF52_FEATHER
	bool "Adafruit NRF52 Feather board"
	depends on ARCH_CHIP_NRF52
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	---help---
		This option selects the Adafruit nRF52832 Feather board

config ARCH_BOARD_NRF52832_SPARKFUN
	bool "Sparkfun nRF52832 breakout board"
	depends on ARCH_CHIP_NRF52
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	---help---
		This option selects the Sparkfun nRF52832 breakout board

config ARCH_BOARD_NRF52832_MDK
	bool "MakerDiary nRF52832 MDK"
	depends on ARCH_CHIP_NRF52
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	---help---
		This option selects MakerDiary's nRF52832 MDKboard

config ARCH_BOARD_NRF52840_DK
	bool "Nordic nRF52840 Development Kit (PCA10056)"
	depends on ARCH_CHIP_NRF52
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	---help---
		This option selects the Nordic nRF52840 Development Kit (PCA10056)

config ARCH_BOARD_NRF52840_DONGLE
	bool "Nordic nRF52840 Dongle (PCA10059)"
	depends on ARCH_CHIP_NRF52
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	---help---
		This option selects the Nordic nRF52840 Dongle (PCA10059)

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_OLIMEX_EFM32G880F128_STK
	bool "Olimex EFM32G880F128 STK"
	depends on ARCH_CHIP_EFM32G880F128
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This options selects the Olimex EFM32G880F128 STK

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_LPC_H3131
	bool "Olimex LPC-H3131 Development board"
	depends on ARCH_CHIP_LPC3131
	select ARCH_HAVE_LEDS
	---help---
		Olimex LPC-H3131 development board.  This board is based on the
		NXP LPC3131 MCU.

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_STM32H405
	bool "Olimex STM32 H405 board"
	depends on ARCH_CHIP_STM32F405RG
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This port uses the Olimex STM32 H405 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 STM32F405RGT6
		MCU.

config ARCH_BOARD_OLIMEX_STM32H407
	bool "Olimex STM32 H407 board"
	depends on ARCH_CHIP_STM32F407ZG
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This port uses the Olimex STM32 H407 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 STM32F407ZGT6 (144pins).

config ARCH_BOARD_OLIMEX_STM32E407
	bool "Olimex STM32 E407 board"
	depends on ARCH_CHIP_STM32F407ZG || ARCH_CHIP_STM32F407ZE
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		Olimex STM32 E407 board based on the STMicro STM32F407ZGT6 (144pins)
		or STM32F407ZE on newer boards.

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_OLIMEX_STM32P207
	bool "Olimex STM32 P207 board"
	depends on ARCH_CHIP_STM32F207ZE
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This port uses the Olimex STM32 P207 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 STM32F207ZE MCU

config ARCH_BOARD_OLIMEX_STM32P407
	bool "Olimex STM32 P407 board"
	depends on ARCH_CHIP_STM32F407ZG
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This port uses the Olimex STM32 P407 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 STM32F407ZG MCU

config ARCH_BOARD_OLIMEXINO_STM32
	bool "Olimexino STM32 board"
	depends on ARCH_CHIP_STM32F103RB
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This port uses the Olimexino STM32 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 STM32F103RBT6 MCU.
		Contributed by David Sidrane.

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_OR1K
	bool "OpenRISC generic board"
	depends on ARCH_CHIP_MOR1KX
	select ARCH_HAVE_LEDS
	---help---
		Generic OpenRISC board.

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_PCDUINO_A10
	bool "pcDuino A10"
	depends on ARCH_CHIP_A10
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This is the port of NuttX to the Allwinner A10-based pcDuino v1
		board.  See http://www.pcduino.com/ for information about pcDuino Lite, v1,
		and v2.  I have not compared these boards in detail, but I believe that
		the differences are cosmetic.  This port was developed on the v1 board,
		but the others may be compatible.

config ARCH_BOARD_BEAGLEBONE_BLACK
	bool "beaglebone black"
	depends on ARCH_CHIP_AM335X
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This is the port of NuttX to the TI Beaglebone Black board.

config ARCH_BOARD_PIC32MX_STARTERKIT
	bool "Microchip PIC32MX 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_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_PIC32MZ_STARTERKIT
	bool "Microchip PIC32MZ Ethernet Starter Kit ((DM320006)"
	depends on ARCH_CHIP_PIC32MZ2048ECH || ARCH_CHIP_PIC32MZ2048ECM
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS if PIC32MZ_GPIOIRQ_PORTB
	---help---
		This is the port of NuttX to the Microchip PIC32MZ Embedded
		Connectivity (EC) Starter Kit.  There are two configurations of the
		starter kit:

		1) The PIC32MZ Embedded Connectivity Starter Kit based on the
		   PIC32MZ2048ECH144-I/PH chip (DM320006), and
		2) The PIC32MZ Embedded Connectivity Starter Kit based on the
		   PIC32MZ2048ECM144-I/PH w/Crypto Engine (DM320006-C)

		See www.microchip.com for further information.

config ARCH_BOARD_NR5M100_NEXYS4
	bool "NEXT RISC-V NR5M100 on Nexys-4 board"
	depends on ARCH_CHIP_NR5M100
	select UART_SERIALDRIVER
	---help---
		This is the port NuttX to the NEXT RISC-V processor runnining on a Digilent
		Nexys-4 (non DDR version) FPGA board.

config ARCH_BOARD_NUCLEO_F429ZI
	bool "STMicro NUCLEO-F429ZI"
	depends on ARCH_CHIP_STM32F429Z
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro Nucleo-F429zi board based on the STMicro STM32F429ZIT6 MCU.

config ARCH_BOARD_NUCLEO_144
	bool "STMicro NUCLEO-144"
	depends on ARCH_CHIP_STM32F722ZE || ARCH_CHIP_STM32F746ZG || ARCH_CHIP_STM32F767ZI
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro Nucleo-144 development board featuring STMicroelectronics
		F2, F3, F4, F7 and L4 MCU families.  The board is a "Hardware pattern"
		that can be populated with the 144 pin package of the following MCUs:

			Target STM32    Order code
			STM32F207ZGT6   NUCLEO-F207ZG
			STM32F303ZET6   NUCLEO-F303ZE
			STM32F429ZIT6   NUCLEO-F429ZI
			STM32F446ZET6   NUCLEO-F446ZE
			STM32F722ZET6   NUCLEO-F722ZE
			STM32F746ZGT6   NUCLEO-F746ZG
			STM32F767ZIT6   NUCLEO-F767ZI
			STM32L496ZGT6   NUCLEO-L496ZG
			STM32L496ZGT6P  NUCLEO-L496ZG-P

		Supported in this configuration are:

			NUCLEO-F722ZE - STM32F722ZET6 a 216MHz Cortex-M7, w/FPU -
				512KiB Flash memory and 256KiB SRAM.
			NUCLEO-F746ZG - STM32F746ZGT6 a 216MHz Cortex-M7, w/FPU -
				1024KiB Flash memory and 320KiB SRAM.
			NUCLEO-F767ZI - STM32F767ZIT6 a 216MHz Cortex-M7, w/DPFPU -
				2048KiB Flash memory and 512KiB SRAM.

config ARCH_BOARD_NUCLEO_L073RZ
	bool "STM32L073RZU6 Nucleo L073RZ"
	depends on ARCH_CHIP_STM32L073RZ
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro Nucleo L073RZ board based on the STMicro STM32L073RZU6 MCU.

config ARCH_BOARD_NUCLEO_L496ZG
	bool "STM32L496 Nucleo L496ZG"
	depends on ARCH_CHIP_STM32L496ZG
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro Nucleo-144 development board featuring STMicroelectronics
		F2, F3, F4, F7 and L4 MCU families.  The board is a "Hardware pattern"
		that can be populated with the 144 pin package of the following MCUs:

			Target STM32    Order code
			STM32F207ZGT6   NUCLEO-F207ZG
			STM32F303ZET6   NUCLEO-F303ZE
			STM32F429ZIT6   NUCLEO-F429ZI
			STM32F446ZET6   NUCLEO-F446ZE
			STM32F746ZGT6   NUCLEO-F746ZG
			STM32F767ZIT6   NUCLEO-F767ZI
			STM32L496ZGT6   NUCLEO-L496ZG
			STM32L496ZGT6P  NUCLEO-L496ZG-P

		Supported in this configuration are:

			NUCLEO-L496ZG - STM32L496ZGT6 a 80MHz Cortex-M4, w/FPU -
				1024KiB Flash memory and 320KiB SRAM.

config ARCH_BOARD_NUCLEO_F072RB
	bool "STM32F072 Nucleo F072RB"
	depends on ARCH_CHIP_STM32F072RB
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro Nucleo F072RB board based on the STMicro STM32F072RBT6 MCU.

config ARCH_BOARD_NUCLEO_F091RC
	bool "STM32F091 Nucleo F091RC"
	depends on ARCH_CHIP_STM32F091RC
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro Nucleo F091RC board based on the STMicro STM32F091RCT6 MCU.

config ARCH_BOARD_NUCLEO_F103RB
	bool "STM32F103 Nucleo F103RB"
	depends on ARCH_CHIP_STM32F103RB
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro Nucleo F103RB board based on the STMicro STM32F103RBT6 MCU.

config ARCH_BOARD_NUCLEO_F207ZG
	bool "STM32F207 Nucleo F207ZG"
	depends on ARCH_CHIP_STM32F207ZG
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro Nucleo F207ZG board based on the STMicro STM32F207ZGT6 MCU.

config ARCH_BOARD_NUCLEO_F302R8
	bool "STM32F303 Nucleo F302R8"
	depends on ARCH_CHIP_STM32F302R8
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro Nucleo F302R8 board based on the STMicro STM32F302R8T6 MCU.

config ARCH_BOARD_NUCLEO_F303RE
	bool "STM32F303 Nucleo F303RE"
	depends on ARCH_CHIP_STM32F303RE
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro Nucleo F303RE board based on the STMicro STM32F303RET6 MCU.

config ARCH_BOARD_NUCLEO_F303ZE
	bool "STM32F303 Nucleo F303ZE"
	depends on ARCH_CHIP_STM32F303ZE
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro Nucleo F303ZE board based on the STMicro STM32F303ZET6 MCU.

config ARCH_BOARD_NUCLEO_F334R8
	bool "STM32F334 Nucleo F334R8"
	depends on ARCH_CHIP_STM32F334R8
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro Nucleo F334R8 board based on the STMicro STM32F334R8 MCU.

config ARCH_BOARD_NUCLEO_F401RE
	bool "STM32F401 Nucleo F401RE"
	depends on ARCH_CHIP_STM32F401RE
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This is a minimal configuration that supports low-level test of the
		Nucleo F401RE in the NuttX source tree.

config ARCH_BOARD_NUCLEO_F410RB
	bool "STM32F410 Nucleo F410RB"
	depends on ARCH_CHIP_STM32F410RB
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This is a minimal configuration that supports low-level test of the
		Nucleo F410RB in the NuttX source tree.

config ARCH_BOARD_NUCLEO_F411RE
	bool "STM32F411 Nucleo F411RE"
	depends on ARCH_CHIP_STM32F411RE
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This is a minimal configuration that supports low-level test of the
		Nucleo F411RE in the NuttX source tree.

config ARCH_BOARD_NUCLEO_F412ZG
	bool "STM32F412 Nucleo F412ZG"
	depends on ARCH_CHIP_STM32F412ZG
	select ARCH_HAVE_LEDS
	---help---
		This is a minimal configuration that supports low-level test of the
		Nucleo F412ZG in the NuttX source tree.

config ARCH_BOARD_NUCLEO_F446RE
	bool "STM32F446 Nucleo F446RE"
	depends on ARCH_CHIP_STM32F446R
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This is a minimal configuration that supports low-level test of the
		Nucleo F446RE in the NuttX source tree.

config ARCH_BOARD_NUCLEO_G070RB
	bool "STM32G070 Nucleo G070RB"
	depends on ARCH_CHIP_STM32G070RB
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This is a minimal configuration that supports low-level test of the
		Nucleo G070RB in the NuttX source tree.

config ARCH_BOARD_NUCLEO_G071RB
	bool "STM32G071 Nucleo G071RB"
	depends on ARCH_CHIP_STM32G071RB
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This is a minimal configuration that supports low-level test of the
		Nucleo G071RB in the NuttX source tree.

config ARCH_BOARD_NUCLEO_H743ZI
	bool "STM32H743 Nucleo H743ZI"
	depends on ARCH_CHIP_STM32H743ZI
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
# TODO:	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro Nucleo H743ZI board based on the STMicro STM32H743ZI MCU.

config ARCH_BOARD_NUCLEO_L152RE
	bool "STM32L152 Nucleo L152RE"
	depends on ARCH_CHIP_STM32L152RE
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro Nucleo L152RE board based on the STMicro STM32L152REU6 MCU.

config ARCH_BOARD_NUCLEO_L432KC
	bool "STM32L432 Nucleo-32 L432KC"
	depends on ARCH_CHIP_STM32L432KC
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro Nucleo-32 L432KC board based on the STMicro STM32L432KCU6 MCU.

config ARCH_BOARD_NUCLEO_L452RE
	bool "STM32L452 Nucleo L452RE"
	depends on ARCH_CHIP_STM32L452RE
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro Nucleo L452RE board based on the STMicro STM32L452RET6 MCU.

config ARCH_BOARD_NUCLEO_L476RG
	bool "STM32L476 Nucleo L476RG"
	depends on ARCH_CHIP_STM32L476RG
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro Nucleo L476RG board based on the STMicro STM32L476RGT6 MCU.

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
		hardware (Google the Bifferboard).

config ARCH_BOARD_INTEL64_QEMU
	bool "Intel64 for Qemu simulator"
	depends on ARCH_X86_64 || ARCH_INTEL64
	---help---
		Port of NuttX to QEMU in intel64 mode.  This port will also run on real
		generic Intel64 hardware.

config ARCH_BOARD_RX65N
	bool "RX65N renesas board"
	depends on ARCH_CHIP_R5F565NEDDFC
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	---help---
		This is a port of the renesas RX65N on the Renesas RX65N board.
		STATUS:  Work has just began on this port.

config ARCH_BOARD_RX65N_RSK1MB
	bool "RX65N on RSKRX65N-1MB renesas board"
	depends on ARCH_CHIP_R5F565NEDDFC
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	---help---
		This is a port of the renesas RX65N on the Renesas RX65N board.
		STATUS:  Work has just began on this port.

config ARCH_BOARD_RX65N_RSK2MB
	bool "RX65N on RSKRX65N-2MB renesas board"
	depends on ARCH_CHIP_R5F565NEHDFC
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	---help---
		This is a port of the renesas RX65N on the Renesas RX65N board.
		STATUS:  Work has just began on this port.

config ARCH_BOARD_RX65N_GRROSE
	bool "RX65N on GR-ROSE renesas board"
	depends on ARCH_CHIP_R5F565NEHDFP
	select ARCH_HAVE_LEDS
	---help---
		This is a port of the renesas RX65N on the Renesas RX65N board.
		STATUS:  Work has just began on this port.

config ARCH_BOARD_S32K118EVB
	bool "NXP S32K118EVB"
	depends on ARCH_CHIP_S32K118
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This options selects support for NuttX on the NXP S32K118EVB board
		featuring the S32K118 Cortex-M0+.

config ARCH_BOARD_S32K144EVB
	bool "NXP S32K144EVB"
	depends on ARCH_CHIP_S32K144
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This options selects support for NuttX on the NXP S32K144EVB board
		featuring the S32K144 Cortex-M4F.

config ARCH_BOARD_RDDRONE_UAVCAN144
	bool "NXP RDDRONE-UAVCAN144"
	depends on ARCH_CHIP_S32K144
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This options selects support for NuttX on the NXP RDDRONE-UAVCAN board
		featuring the S32K144 Cortex-M4F.

config ARCH_BOARD_RDDRONE_UAVCAN146
	bool "NXP RDDRONE-UAVCAN146"
	depends on ARCH_CHIP_S32K146
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This options selects support for NuttX on the NXP RDDRONE-UAVCAN board
		featuring the S32K146 Cortex-M4F.

config ARCH_BOARD_S32K146EVB
	bool "NXP S32K146EVB"
	depends on ARCH_CHIP_S32K146
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This options selects support for NuttX on the NXP S32K146EVB board
		featuring the S32K146 Cortex-M4F.

config ARCH_BOARD_S32K148EVB
	bool "NXP S32K148EVB"
	depends on ARCH_CHIP_S32K148
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This options selects support for NuttX on the NXP S32K148EVB board
		featuring the S32K148 Cortex-M4F.

config ARCH_BOARD_SABRE_6QUAD
	bool "NXP/Freescale i.MX6 Sabre-6Quad board"
	depends on ARCH_CHIP_IMX6_6QUAD
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This options selects support for NuttX on the NXP/Freescale Sabre
		board featuring the iMX 6Quad CPU.

config ARCH_BOARD_SAMA5D2_XULT
    bool "Atmel SAMA5D2 Xplained Ultra development board"
    depends on ARCH_CHIP_ATSAMA5D27
    select ARCH_HAVE_LEDS
    select ARCH_HAVE_BUTTONS
    select ARCH_HAVE_IRQBUTTONS
    ---help---
        The port of NuttX to the Atmel SAMA5D2-XULT development board

config ARCH_BOARD_GIANT_BOARD
	bool "Groboards Giant Board (SAMA5D27C-D1G)"
	depends on ARCH_CHIP_ATSAMA5D27
    select SAMA5D27_GIANT_BOARD_492MHZ
	select ARCH_HAVE_LEDS
	---help---
	    This options selects support for NuttX on the Groboards Giant Board,
	    featuring the SAMA5D27C-D1G SIP with 128MB DDR2 RAM.

config ARCH_BOARD_SAMA5D3X_EK
	bool "Atmel SAMA5D3x-EK development board"
	depends on ARCH_CHIP_ATSAMA5D31 || ARCH_CHIP_ATSAMA5D33 || ARCH_CHIP_ATSAMA5D34 || ARCH_CHIP_ATSAMA5D35
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	select ARCH_PHY_INTERRUPT
	---help---
		The port of NuttX to the Atmel SAMA5D3x-EK development board (where x=1,3,4, or 5).

config ARCH_BOARD_SAMA5D3_XPLAINED
	bool "Atmel SAMA5D3 Xplained development board"
	depends on ARCH_CHIP_ATSAMA5D36
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	select ARCH_PHY_INTERRUPT if SAMA5_EMACA || SAMA5_EMAC0 || SAMA5_EMAC1 || SAMA5_GMAC
	---help---
		The port of NuttX to the Atmel SAMA5D3 Xplained development board.

config ARCH_BOARD_SAMA5D4_EK
	bool "Atmel SAMA5D4-EK development board"
	depends on ARCH_CHIP_ATSAMA5D44
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	select ARCH_PHY_INTERRUPT
	---help---
		The port of NuttX to the Atmel SAMA5D4-EK development board

config ARCH_BOARD_SAMD20_XPLAINED
	bool "Atmel SAMD20-Xplained Pro development board"
	depends on ARCH_CHIP_SAMD20J18
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		The port of NuttX to the Atmel SAMD20-Xplained Pro development board.
		This board features the ATSAMD20J18A MCU (Cortex-M0+ with 256KB of FLASH
		and 32KB of SRAM).

config ARCH_BOARD_SAMD21_XPLAINED
	bool "Atmel SAMD21-Xplained Pro development board"
	depends on ARCH_CHIP_SAMD21J18A
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		The port of NuttX to the Atmel SAMD21-Xplained Pro development board.
		This board features the ATSAMD21J18A MCU (Cortex-M0+ with 256KB of FLASH
		and 32KB of SRAM).

config ARCH_BOARD_SAME54_XPLAINED_PRO
	bool "Atmel SAME54-Xplained Pro development board"
	depends on ARCH_CHIP_SAME54P20
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		The port of NuttX to the Atmel SAME54-Xplained Pro development board.

config ARCH_BOARD_SAML21_XPLAINED
	bool "Atmel SAML21-Xplained Pro development board"
	depends on ARCH_CHIP_SAML21J18
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		The port of NuttX to the Atmel SAML21-Xplained Pro development board.
		This board features the ATSAML21J18A MCU (Cortex-M0+ with 256KB of FLASH
		and 32KB of SRAM).

config ARCH_BOARD_SAM3UEK
	bool "Atmel SAM3U-EK development board"
	depends on ARCH_CHIP_ATSAM3U4E
	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_SAM4CMP_DB
	bool "Atmel SAM4CMP-DB development board"
	depends on ARCH_CHIP_ATSAM4CMP16B
	---help---
		The port of NuttX to the Atmel SAM4CMP-DB development board.

config ARCH_BOARD_SAM4EEK
	bool "Atmel SAM4E-EK development board"
	depends on ARCH_CHIP_ATSAM4E16E
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	select ARCH_PHY_INTERRUPT
	---help---
		The port of NuttX to the Atmel SAM4E-EK development board.  This
		board features the SAM4E16 MCU running at up to 120MHz.

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_SAM4S_XPLAINED_PRO
	bool "Atmel SAM4S-Xplained Pro development board"
	depends on ARCH_CHIP_ATSAM4SD32C
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		The port of NuttX to the Atmel SAM4S-Xplained Pro development board.

config ARCH_BOARD_SAME70_XPLAINED
	bool "Atmel SAME70 Xplained evaluation board"
	depends on ARCH_CHIP_SAME70Q21
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	select ARCH_PHY_INTERRUPT
	---help---
		The port of NuttX to the Atmel SAME70 Xplained evaluation board.

config ARCH_BOARD_SAMV71_XULT
	bool "Atmel SAMV71 Xplained Ultra evaluation board"
	depends on ARCH_CHIP_SAMV71Q21
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	select ARCH_PHY_INTERRUPT
	---help---
		The port of NuttX to the Atmel SAMV71 Xplained Ultra evaluation 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_PHOTON
	bool "Photon wifi board"
	depends on ARCH_CHIP_STM32F205RG
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		A configuration for the Photon from Particle Devices
		(https://www.particle.io). This board features the STM32F205RGY6
		MCU from STMicro.

config ARCH_BOARD_PNEV5180B
	bool "NXP PNEV5180B NFC Frontend Development Kit"
	depends on ARCH_CHIP_LPC1769
	select ARCH_HAVE_LEDS
	---help---
		NXP Semiconductors' PN5180 NFC Frontend Development Kit.  This board is
		based on the NXP LPC1769 MCU.

config ARCH_BOARD_STM32_BUTTERFLY2
	bool "Kamami STM32Butterfly2 development board"
	depends on ARCH_CHIP_STM32F107VC
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	---help---
		A configuration for the Kamami STM32Butterfly2 development board
		based on STM32F107VC micro-controler chip with optional ETH
		board.  See
		https://kamami.pl/zestawy-uruchomieniowe-stm32/178507-stm32butterfly2.html

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_STM32F103_MINIMUM
	bool "STM32F103C8T6 Minimum ARM Development Board"
	depends on ARCH_CHIP_STM32F103C8
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		A configuration for the STM32F103 Minimum board.

config ARCH_BOARD_STM32F411_MINIMUM
	bool "STM32F411CEU6 Minimum ARM Development Board"
	depends on ARCH_CHIP_STM32F411CE
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		A configuration for the STM32F411 Minimum board.

config ARCH_BOARD_STM3210E_EVAL
	bool "STMicro STM3210E-EVAL development board"
	depends on ARCH_CHIP_STM32F103ZE
	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_STM32F051_DISCOVERY
	bool "STMicro STM32F051-Discovery board"
	depends on ARCH_CHIP_STM32F051R8
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro STM32F051-Discovery board based on the STMicro ARCH_CHIP_STM32F051R8 MCU.

config ARCH_BOARD_STM32F072_DISCOVERY
	bool "STMicro STM32F072-Discovery board"
	depends on ARCH_CHIP_STM32F072RB
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro STM32F072-Discovery board based on the STMicro ARCH_CHIP_STM32F072RB MCU.

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_STM32F334_DISCO
	bool "STMicro STM32F334-Discovery board"
	depends on ARCH_CHIP_STM32F334C8
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro STM32F334-Discovery board based on the STMicro STM32F334C8T6 MCU.

config ARCH_BOARD_OMNIBUSF4
	bool "OMNIBUSF4 flight controller"
	depends on ARCH_CHIP_STM32F405RG
	select ARCH_HAVE_LEDS
	---help---
		Flight controllers compatible with the OMINBUSF4 Betaflight target

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_STM32F411E_DISCO
	bool "STMicro STM32F411E-Discovery board"
	depends on ARCH_CHIP_STM32F411VE
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		This is a minimal configuration that supports low-level test of the
		STMicro STM32F411E-Discovery Board.

config ARCH_BOARD_STM32F429I_DISCO
	bool "STMicro STM32F429I-Discovery board"
	depends on ARCH_CHIP_STM32F429Z
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro STM32F429I-Discovery board based on the STMicro STM32F429ZIT6 MCU.

config ARCH_BOARD_STM32F746G_DISCO
	bool "STMicro STM32F746G-Discovery board"
	depends on ARCH_CHIP_STM32F746NG
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro STM32F746G-DISCO development board featuring the STM32F746NGH6
		MCU. The STM32F746NGH6  is a 216MHz Cortex-M7 operation with 1024Kb Flash
		memory and 320Kb SRAM.

config ARCH_BOARD_STM32F769I_DISCO
	bool "STMicro STM32F769I-Discovery board"
	depends on ARCH_CHIP_STM32F769NI
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro STM32F769I-DISCO development board featuring the STM32F769NIH6
		MCU. The STM32F769NIH6 is a 216MHz Cortex-M7 with 2048Kb Flash
		memory and 512Kb SRAM.

config ARCH_BOARD_STM32H747I_DISCO
	bool "STMicro STM32H747I-DISCO board"
	depends on ARCH_CHIP_STM32H747XI
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro STM32H747I-DISCO development board featuring the STM32H747XIH6
		MCU. The STM32H747XIH6 is a dual core (480MHz Cortex-M7, 240MHz Cortex-M4)
		with 2048Kb Flash memory and 1024Kb SRAM.

config ARCH_BOARD_STM32F746_WS
	bool "Waveshare STM32F746 board"
	depends on ARCH_CHIP_STM32F746IG
	---help---
		Waveshare STM32F746 development board featuring the STM32F746IG MCU.

config ARCH_BOARD_B_G474E_DPOW1
	bool "ST Micro B-G474E-DPOW1 Discovery Kit"
	depends on ARCH_CHIP_STM32G474R
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	---help---
		ST Micro B-G474E-DPOW1 Discovery Kit, based on the STM32G474RET6
		MCU, a Cortex-M4 with FPU, 170 MHz, 128 KB SRAM, 512 KB code.
		See boards/arm/stm32/b-g474e-dpow1/README.txt.

config ARCH_BOARD_NUCLEO_G431RB
	bool "STM32G431RB Nucleo G431RB"
	depends on ARCH_CHIP_STM32G431R
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro Nucleo-G431RB board based on the STMicro STM32G431RB MCU.

config ARCH_BOARD_B_L072Z_LRWAN1
	bool "B-L072Z-LRWAN1"
	depends on ARCH_CHIP_STM32L072CZ
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro STM32L0 Discovery kit with LoRa/SigFox based on STM32L072CZ MCU.

config ARCH_BOARD_B_L475E_IOT01A
	bool "STMicro IoT Discovery kit"
	depends on ARCH_CHIP_STM32L475VG
	select ARCH_HAVE_LEDS
	---help---
		STMicro IoT development board featuring the STM32L475VG
		MCU. The STM32L475VG is a Cortex-M4 optimised for low-power operation
		at up to 80MHz operation with 1024Kb Flash memory and 96+32Kb SRAM.

config ARCH_BOARD_STM32L476VG_DISCO
	bool "STMicro STM32L476VG -Discovery board"
	depends on ARCH_CHIP_STM32L476RG
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro STM32L476VG_DISCO development board featuring the STM32L476VG
		MCU. The STM32L476VG  is a Cortex-M4 optimised for low-power operation
		at up to 80MHz operation with 1024Kb Flash memory and 96+32Kb SRAM.

config ARCH_BOARD_STM32L4R9AI_DISCO
	bool "STMicro STM32L4R9AI -Discovery board"
	depends on ARCH_CHIP_STM32L4R9AI
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro STM32L4R9AI_DISCO development board featuring the STM32L4R9AI
		MCU. The STM32L4R9AI is a Cortex-M4 optimised for low-power operation
		at up to 120MHz operation with 2048Kb Flash memory and 192+64+384Kb SRAM.

config ARCH_BOARD_STM32L476_MDK
	bool "Motorola Mods Development Kit (MDK)"
	depends on ARCH_CHIP_STM32L476RG
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		Motorola Mods Development Board (MDK) features  STM32L476ME MCU.
		The STM32L476ME is a Cortex-M4 optimised for low-power operation
		at up to 80MHz operation with 1024Kb Flash memory and 96+32Kb SRAM.

config ARCH_BOARD_STM32L_DISCOVERY
	bool "STMicro STM32L-Discovery board"
	depends on ARCH_CHIP_STM32L152RB || ARCH_CHIP_STM32L152RC
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro STM32L-Discovery board based on the STMicro STM32L152RBT6 or
		STM32L152RCT6 MCUs.

config ARCH_BOARD_STM32VL_DISCOVERY
	bool "STMicro STM32VL-Discovery board"
	depends on ARCH_CHIP_STM32F100RB
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		STMicro STM32VL-Discovery board based on the STMicro STM32F100RB 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_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_20
	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_TEENSY_3X
	bool "PJRC Teensy++ 3.1 board"
	depends on ARCH_CHIP_MK20DX256VLH7 || ARCH_CHIP_MK20DX128VLH5
	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.

		This is the port of NuttX to the Teensy-3.1 from PJRC
		(https://www.pjrc.com/).  The Teensy-3.1 features the Freescale
		MK30DX256VLH7 chip (now NXP).  The MK30DX256VLH7 is a 64-pin Cortex-M4
		running at 72MHz.  It has 256KiB of program FLASH memory and 64KiB of
		SRAM.  For more information about the Teensy 3.1, see

			https://www.pjrc.com/teensy/teensy31.html
			https://www.pjrc.com/store/teensy31.html

		This board configuration can also be used with the older Teensy-3.0.  The
		Teensy-3.0 has the same schematic (although some pins are not used on the
		Teensy-3.0).  the primary difference is that the Teensy 3.0 has a
		MK20DX128VLH5 with slightly less capability.

config ARCH_BOARD_TEENSY_4X
	bool "PJRC Teensy++ 4.x board"
	depends on ARCH_CHIP_MIMXRT1062DVL6A
	select ARCH_HAVE_LEDS
	---help---
		This is the port of NuttX to the PJRC Teensy++ 4.x board.  This board is
		developed by http://pjrc.com/teensy/.  The Teensy++ 4.x is based
		on an NXP MIMXRT1062DVL6A MCU. The port can support both Teensy 4.0 and
		Teensy 4.1 boards.

config ARCH_BOARD_TEENSY_LC
	bool "Teensy LC"
	depends on ARCH_CHIP_MKL25Z64
	select ARCH_HAVE_LEDS
	---help---
		This is the configuration for the Teensy LC board.
		See https://www.pjrc.com/teensy/teensyLC.html.	The
		Teensy LC is based on the Freescale KL25Z.

config ARCH_BOARD_TM4C123G_LAUNCHPAD
	bool "Tiva TM4C123G LaunchPad"
	depends on ARCH_CHIP_TM4C123GH6PM
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		Tiva TM4C123G LaunchPad.

config ARCH_BOARD_TM4C1294_LAUNCHPAD
	bool "Tiva EK-TM4C1294XL LaunchPad"
	depends on ARCH_CHIP_TM4C1294NCPDT
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		Tiva EK-TM4C1294XL LaunchPad.

config ARCH_BOARD_TMS570LS31X_USB_KIT
	bool "TI TMS570LS31X_USB_KIT"
	depends on ARCH_CHIP_TMS570LS3137ZWT
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		TI Hercules TMS570LS31xx Evaluation Kit (TMDS570ls31xx USB Kit)
		featuring the Hercules TMS570LS3137ZWT chip.

config ARCH_BOARD_TWR_K60N512
	bool "FreeScale TWR-K60N512 development 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_TWR_K64F120M
	bool "Freescale TWR-K64F120M development board"
	depends on ARCH_CHIP_MK64FN1M0VMD12
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		Kinetis K64 Cortex-M4 MCU. This port uses the Freescale TWR-K64F120M
		development board.

config ARCH_BOARD_U_BLOX_C027
	bool "u-blox C027"
	depends on ARCH_CHIP_LPC1768
	select ARCH_HAVE_LEDS
	---help---
		u-blox GSM and GPS module evaluation board with NXP LPCExpresso
		LPC1768.  The GSM module is one of LISA-C200, LISA-U200 or SARA-G350.
		The GPS module is one of MAX-M7 or MAX-M8.

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
	select ARCH_HAVE_BUTTONS
	---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_VIEWTOOL_STM32F107
	bool "ViewTool STM32F103/F107"
	depends on ARCH_CHIP_STM32F107VC || ARCH_CHIP_STM32F103VC
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	---help---
		This port uses the ViewTool STM32F103/F107 V1.2 board.  This
		board may be fitted with either: (1) STM32F107VCT6 or (2) STM32F103VCT6.
		See http://www.viewtool.com/ for further information.

config ARCH_BOARD_XMC4500RELAX
	bool "Infineon XMC4500 Relax"
	depends on ARCH_CHIP_XMC4500
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		Infineon XMC4500 Relax Lite v1

config ARCH_BOARD_XMC4700RELAX
	bool "Infineon XMC4700 Relax"
	depends on ARCH_CHIP_XMC4700
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	---help---
		Infineon XMC4700 Relax

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

config ARCH_BOARD_Z20X
	bool "z20x"
	depends on ARCH_CHIP_EZ80F92
	---help---
		ez80Acclaim! Microcontroller.  This port use the z80x board
		based on an eZ80F092 part, and the Zilog ZDS-II Windows command line
		tools.  The development environment is Cygwin under Windows. A
		Windows native development environment is available but has not
		been verified.

config ARCH_BOARD_Z80SIM
	bool "Z80 Instruction Set Simulator"
	depends on ARCH_CHIP_Z80
	select UART_SERIALDRIVER
	---help---
		z80 Microcontroller.  This port uses a Z80 instruction set simulator
		called 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_LPC214X
	---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_SPRESENSE
	bool "Sony Spresense Board"
	depends on ARCH_CHIP_CXD56XX
	select ARCH_HAVE_LEDS
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	select ARCH_HAVE_POWEROFF
	---help---
		none

config ARCH_BOARD_SIM
	bool "User mode simulation"
	select ARCH_HAVE_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	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 boards/.

		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

if ARCH_BOARD_CUSTOM
menu "Custom Board Configuration"

config ARCH_BOARD_CUSTOM_NAME
	string "Custom board name"
	default ""
	---help---
		This is a name for the board.  It is not used except to return the
		information via the NSH uname command.

config ARCH_BOARD_CUSTOM_DIR
	string "Custom board directory"
	default ""
	---help---
		If the custom board configuration is selected, then it is necessary
		to also tell the build system where it can find the board directory
		for the custom board.

		In this case, the board directory is assumed to lie outside the
		NuttX directory.  The provided path must then be a full, absolute
		path to some location outside of the NuttX source tree (like
		"~/projects/myboard").

config ARCH_BOARD_CUSTOM_DIR_RELPATH
	bool "Relative custom board directory"
	default y
	---help---
		Specifies that the board directory is relative to the NuttX directory.

config BOARD_CUSTOM_LEDS
	bool "Custom board LEDs"
	default n
	select ARCH_HAVE_LEDS

config BOARD_CUSTOM_BUTTONS
	bool "Custom board buttons"
	default n
	select ARCH_HAVE_BUTTONS
	select ARCH_BUTTONS

config BOARD_CUSTOM_IRQBUTTONS
	bool "Custom Board IRQ buttons"
	default n
	depends on BOARD_CUSTOM_BUTTONS
	select ARCH_HAVE_IRQBUTTONS
	select ARCH_IRQBUTTONS

config BOARD_CUSTOM_INTERRUPT
	bool "Custom board PHY interrupts"
	default n
	depends on NETDEVICES
	select ARCH_PHY_INTERRUPT

endmenu # Custom Board Configuration
endif #ARCH_BOARD_CUSTOM

config ARCH_BOARD
	string
	default "amber"                    if ARCH_BOARD_AMBER
	default "arduino-mega2560"         if ARCH_BOARD_ARDUINO_MEGA2560
	default "arduino-due"              if ARCH_BOARD_ARDUINO_DUE
	default "arduino-m0"               if ARCH_BOARD_ARDUINO_M0
	default "arty_a7"                  if ARCH_BOARD_ARTY_A7
	default "avr32dev1"                if ARCH_BOARD_AVR32DEV1
	default "axoloti"                  if ARCH_BOARD_AXOLOTI
	default "bambino-200e"             if ARCH_BOARD_BAMBINO_200E
	default "c5471evm"                 if ARCH_BOARD_C5471EVM
	default "clicker2-stm32"           if ARCH_BOARD_CLICKER2_STM32
	default "cloudctrl"                if ARCH_BOARD_CLOUDCTRL
	default "demo9s12ne64"             if ARCH_BOARD_DEMOS92S12NEC64
	default "dk-tm4c129x"              if ARCH_BOARD_DK_TM4C129X
	default "ea3131"                   if ARCH_BOARD_EA3131
	default "ea3152"                   if ARCH_BOARD_EA3152
	default "eagle100"                 if ARCH_BOARD_EAGLE100
	default "efm32-g8xx-stk"           if ARCH_BOARD_EFM32G8XXSTK
	default "efm32gg-stk3700"          if ARCH_BOARD_EFM32GG_STK3700
	default "ekk-lm3s9b96"             if ARCH_BOARD_EKKLM3S9B96
	default "quickfeather"             if ARCH_BOARD_QUICKFEATHER
	default "esp32-core"               if ARCH_BOARD_ESP32CORE
	default "ez80f910200kitg"          if ARCH_BOARD_EZ80F910200KITG
	default "ez80f910200zco"           if ARCH_BOARD_EZ80F910200ZCO
	default "fire-stm32v2"             if ARCH_BOARD_FIRE_STM32
	default "flipnclick-pic32mz"       if ARCH_BOARD_FLIPNCLICK_PIC32MZ
	default "flipnclick-sam3x"         if ARCH_BOARD_FLIPNCLICK_SAM3X
	default "freedom-k28f"             if ARCH_BOARD_FREEDOM_K28F
	default "freedom-k64f"             if ARCH_BOARD_FREEDOM_K64F
	default "freedom-k66f"             if ARCH_BOARD_FREEDOM_K66F
	default "freedom-kl25z"            if ARCH_BOARD_FREEDOM_KL25Z
	default "freedom-kl26z"            if ARCH_BOARD_FREEDOM_KL26Z
	default "gapuino"                  if ARCH_BOARD_GAPUINO
	default "hifive1-revb"             if ARCH_BOARD_HIFIVE1_REVB
	default "hymini-stm32v"            if ARCH_BOARD_HYMINI_STM32V
	default "imxrt1020-evk"            if ARCH_BOARD_IMXRT1020_EVK
	default "imxrt1050-evk"            if ARCH_BOARD_IMXRT1050_EVK
	default "imxrt1060-evk"            if ARCH_BOARD_IMXRT1060_EVK
	default "kwikstik-k40"             if ARCH_BOARD_KWIKSTIK_K40
	default "launchxl-cc1310"          if ARCH_BOARD_LAUNCHXL_CC1310
	default "launchxl-cc1312r1"        if ARCH_BOARD_LAUNCHXL_CC1312R1
	default "launchxl-tms57004"        if ARCH_BOARD_LAUNCHXL_TMS57004
	default "lc823450-xgevk"           if ARCH_BOARD_LC823450_XGEVK
	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 "lpc4088-devkit"           if ARCH_BOARD_LPC4088_DEVKIT
	default "lpc4088-quickstart"       if ARCH_BOARD_LPC4088_QUICKSTART
	default "lpc4330-xplorer"          if ARCH_BOARD_LPC4330_XPLORER
	default "lpc4337-ws"               if ARCH_BOARD_LPC4337_WS
	default "lpc4357-evb"              if ARCH_BOARD_LPC4357_EVB
	default "lpc4370-link2"            if ARCH_BOARD_LPC4370_LINK2
	default "lpcxpresso-lpc1768"       if ARCH_BOARD_LPCXPRESSO
	default "lpcxpresso-lpc54628"      if ARCH_BOARD_LPCXPRESSO_LPC54628
	default "lx_cpu"                   if ARCH_BOARD_LX_CPU
	default "maix-bit"                 if ARCH_BOARD_MAIX_BIT
	default "maple"                    if ARCH_BOARD_MAPLE
	default "makerlisp"                if ARCH_BOARD_MAKERLISP
	default "max32660-evsys"           if ARCH_BOARD_MAX32660_EVSYS
	default "mbed"                     if ARCH_BOARD_MBED
	default "mcb1700"                  if ARCH_BOARD_MCB1700
	default "mcu123-lpc214x"           if ARCH_BOARD_MCU123_LPC214X
	default "metro-m4"                 if ARCH_BOARD_METRO_M4
	default "micropendous3"            if ARCH_BOARD_MICROPENDOUS3
	default "mirtoo"                   if ARCH_BOARD_MIRTOO
	default "misoc"                    if ARCH_BOARD_MISOC_QEMU || ARCH_BOARD_MISOC_VERILATOR
	default "moteino-mega"             if ARCH_BOARD_MOTEINO_MEGA
	default "ne64badge"                if ARCH_BOARD_NE64BADGE
	default "nrf52-feather"            if ARCH_BOARD_NRF52_FEATHER
	default "nrf52832-sparkfun"        if ARCH_BOARD_NRF52832_SPARKFUN
	default "nrf52832-mdk"             if ARCH_BOARD_NRF52832_MDK
	default "nrf52832-dk"              if ARCH_BOARD_NRF52832_DK
	default "nrf52840-dk"              if ARCH_BOARD_NRF52840_DK
	default "nrf52840-dongle"          if ARCH_BOARD_NRF52840_DONGLE
	default "ntosd-dm320"              if ARCH_BOARD_NTOSD_DM320
	default "nucleo-144"               if ARCH_BOARD_NUCLEO_144
	default "nucleo-f072rb"            if ARCH_BOARD_NUCLEO_F072RB
	default "nucleo-f091rc"            if ARCH_BOARD_NUCLEO_F091RC
	default "nucleo-f103rb"            if ARCH_BOARD_NUCLEO_F103RB
	default "nucleo-f207zg"            if ARCH_BOARD_NUCLEO_F207ZG
	default "nucleo-f302r8"            if ARCH_BOARD_NUCLEO_F302R8
	default "nucleo-f303re"            if ARCH_BOARD_NUCLEO_F303RE
	default "nucleo-f303ze"            if ARCH_BOARD_NUCLEO_F303ZE
	default "nucleo-f334r8"            if ARCH_BOARD_NUCLEO_F334R8
	default "nucleo-f4x1re"            if ARCH_BOARD_NUCLEO_F401RE || ARCH_BOARD_NUCLEO_F411RE
	default "nucleo-f429zi"            if ARCH_BOARD_NUCLEO_F429ZI
	default "nucleo-f446re"            if ARCH_BOARD_NUCLEO_F446RE
	default "nucleo-f410rb"            if ARCH_BOARD_NUCLEO_F410RB
	default "nucleo-f412zg"            if ARCH_BOARD_NUCLEO_F412ZG
	default "nucleo-g070rb"            if ARCH_BOARD_NUCLEO_G070RB
	default "nucleo-g071rb"            if ARCH_BOARD_NUCLEO_G071RB
	default "nucleo-h743zi"            if ARCH_BOARD_NUCLEO_H743ZI
	default "nucleo-l073rz"            if ARCH_BOARD_NUCLEO_L073RZ
	default "nucleo-l152re"            if ARCH_BOARD_NUCLEO_L152RE
	default "nucleo-l432kc"            if ARCH_BOARD_NUCLEO_L432KC
	default "nucleo-l452re"            if ARCH_BOARD_NUCLEO_L452RE
	default "nucleo-l476rg"            if ARCH_BOARD_NUCLEO_L476RG
	default "nucleo-l496zg"            if ARCH_BOARD_NUCLEO_L496ZG
	default "nutiny-nuc120"            if ARCH_BOARD_NUTINY_NUC120
	default "nr5m100-nexys4"           if ARCH_BOARD_NR5M100_NEXYS4
	default "olimex-efm32g880f128-stk" if ARCH_BOARD_OLIMEX_EFM32G880F128_STK
	default "olimex-lpc1766stk"        if ARCH_BOARD_LPC1766STK
	default "olimex-lpc2378"           if ARCH_BOARD_OLIMEXLPC2378
	default "olimex-lpc-h3131"         if ARCH_BOARD_OLIMEX_LPC_H3131
	default "olimex-stm32-h405"        if ARCH_BOARD_OLIMEX_STM32H405
	default "olimex-stm32-h407"        if ARCH_BOARD_OLIMEX_STM32H407
	default "olimex-stm32-e407"        if ARCH_BOARD_OLIMEX_STM32E407
	default "olimex-stm32-p107"        if ARCH_BOARD_OLIMEX_STM32P107
	default "olimex-stm32-p207"        if ARCH_BOARD_OLIMEX_STM32P207
	default "olimex-stm32-p407"        if ARCH_BOARD_OLIMEX_STM32P407
	default "olimex-strp711"           if ARCH_BOARD_OLIMEX_STRP711
	default "olimexino-stm32"          if ARCH_BOARD_OLIMEXINO_STM32
	default "omnibusf4"                if ARCH_BOARD_OMNIBUSF4
	default "open1788"                 if ARCH_BOARD_OPEN1788
	default "or1k"                     if ARCH_BOARD_OR1K
	default "p112"                     if ARCH_BOARD_P112
	default "pcduino-a10"              if ARCH_BOARD_PCDUINO_A10
	default "beaglebone-black"         if ARCH_BOARD_BEAGLEBONE_BLACK
	default "pic32mx-starterkit"       if ARCH_BOARD_PIC32MX_STARTERKIT
	default "pic32mx7mmb"              if ARCH_BOARD_PIC32MX7MMB
	default "pic32mz-starterkit"       if ARCH_BOARD_PIC32MZ_STARTERKIT
	default "qemu-i486"                if ARCH_BOARD_QEMU_I486
	default "intel64-qemu"             if ARCH_BOARD_INTEL64_QEMU
	default "rx65n"                    if ARCH_BOARD_RX65N
	default "rx65n-rsk1mb"             if ARCH_BOARD_RX65N_RSK1MB
	default "rx65n-rsk2mb"             if ARCH_BOARD_RX65N_RSK2MB
	default "rx65n-grrose"             if ARCH_BOARD_RX65N_GRROSE
	default "s32k118evb"               if ARCH_BOARD_S32K118EVB
	default "s32k144evb"               if ARCH_BOARD_S32K144EVB
	default "rddrone-uavcan144"        if ARCH_BOARD_RDDRONE_UAVCAN144
	default "rddrone-uavcan146"        if ARCH_BOARD_RDDRONE_UAVCAN146
	default "s32k146evb"               if ARCH_BOARD_S32K146EVB
	default "s32k148evb"               if ARCH_BOARD_S32K148EVB
	default "sabre-6quad"              if ARCH_BOARD_SABRE_6QUAD
	default "sama5d2-xult"             if ARCH_BOARD_SAMA5D2_XULT
	default "giant-board"              if ARCH_BOARD_GIANT_BOARD
	default "sama5d3x-ek"              if ARCH_BOARD_SAMA5D3X_EK
	default "sama5d3-xplained"         if ARCH_BOARD_SAMA5D3_XPLAINED
	default "sama5d4-ek"               if ARCH_BOARD_SAMA5D4_EK
	default "samd20-xplained"          if ARCH_BOARD_SAMD20_XPLAINED
	default "samd21-xplained"          if ARCH_BOARD_SAMD21_XPLAINED
	default "same54-xplained-pro"      if ARCH_BOARD_SAME54_XPLAINED_PRO
	default "saml21-xplained"          if ARCH_BOARD_SAML21_XPLAINED
	default "sam3u-ek"                 if ARCH_BOARD_SAM3UEK
	default "sam4cmp-db"               if ARCH_BOARD_SAM4CMP_DB
	default "sam4e-ek"                 if ARCH_BOARD_SAM4EEK
	default "sam4l-xplained"           if ARCH_BOARD_SAM4L_XPLAINED
	default "sam4s-xplained"           if ARCH_BOARD_SAM4S_XPLAINED
	default "sam4s-xplained-pro"       if ARCH_BOARD_SAM4S_XPLAINED_PRO
	default "same70-xplained"          if ARCH_BOARD_SAME70_XPLAINED
	default "samv71-xult"              if ARCH_BOARD_SAMV71_XULT
	default "shenzhou"                 if ARCH_BOARD_SHENZHOU
	default "skp16c26"                 if ARCH_BOARD_SKP16C26
	default "photon"                   if ARCH_BOARD_PHOTON
	default "pnev5180b"                if ARCH_BOARD_PNEV5180B
	default "stm32butterfly2"          if ARCH_BOARD_STM32_BUTTERFLY2
	default "stm32_tiny"               if ARCH_BOARD_STM32_TINY
	default "stm32f051-discovery"      if ARCH_BOARD_STM32F051_DISCOVERY
	default "stm32f072-discovery"      if ARCH_BOARD_STM32F072_DISCOVERY
	default "stm32f103-minimum"        if ARCH_BOARD_STM32F103_MINIMUM
	default "stm32f411-minimum"        if ARCH_BOARD_STM32F411_MINIMUM
	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 "stm32f3discovery"         if ARCH_BOARD_STM32F3_DISCOVERY
	default "stm32f334-disco"          if ARCH_BOARD_STM32F334_DISCO
	default "stm32f4discovery"         if ARCH_BOARD_STM32F4_DISCOVERY
	default "stm32f411e-disco"         if ARCH_BOARD_STM32F411E_DISCO
	default "stm32f429i-disco"         if ARCH_BOARD_STM32F429I_DISCO
	default "stm32f746g-disco"         if ARCH_BOARD_STM32F746G_DISCO
	default "stm32f769i-disco"         if ARCH_BOARD_STM32F769I_DISCO
	default "stm32h747i-disco"         if ARCH_BOARD_STM32H747I_DISCO
	default "stm32f746-ws"             if ARCH_BOARD_STM32F746_WS
	default "b-g474e-dpow1"            if ARCH_BOARD_B_G474E_DPOW1
	default "nucleo-g431rb"            if ARCH_BOARD_NUCLEO_G431RB
	default "b-l072z-lrwan1"           if ARCH_BOARD_B_L072Z_LRWAN1
	default "b-l475e-iot01a"           if ARCH_BOARD_B_L475E_IOT01A
	default "stm32l476vg-disco"        if ARCH_BOARD_STM32L476VG_DISCO
	default "stm32l476-mdk"            if ARCH_BOARD_STM32L476_MDK
	default "stm32l4r9ai-disco"        if ARCH_BOARD_STM32L4R9AI_DISCO
	default "stm32ldiscovery"          if ARCH_BOARD_STM32L_DISCOVERY
	default "stm32vldiscovery"         if ARCH_BOARD_STM32VL_DISCOVERY
	default "mikroe-stm32f4"           if ARCH_BOARD_MIKROE_STM32F4
	default "sure-pic32mx"             if ARCH_BOARD_SUREPIC32MX
	default "teensy-2.0"               if ARCH_BOARD_TEENSY_20
	default "teensy-3.x"               if ARCH_BOARD_TEENSY_3X
	default "teensy-4.x"               if ARCH_BOARD_TEENSY_4X
	default "teensy-lc"                if ARCH_BOARD_TEENSY_LC
	default "tm4c123g-launchpad"       if ARCH_BOARD_TM4C123G_LAUNCHPAD
	default "tm4c1294-launchpad"       if ARCH_BOARD_TM4C1294_LAUNCHPAD
	default "tms570ls31x-usb-kit"      if ARCH_BOARD_TMS570LS31X_USB_KIT
	default "twr-k60n512"              if ARCH_BOARD_TWR_K60N512
	default "twr-k64f120m"             if ARCH_BOARD_TWR_K64F120M
	default "u-blox-c027"              if ARCH_BOARD_U_BLOX_C027
	default "ubw32"                    if ARCH_BOARD_UBW32
	default "us7032evb1"               if ARCH_BOARD_US7032EVB1
	default "viewtool-stm32f107"       if ARCH_BOARD_VIEWTOOL_STM32F107
	default "xmc4500-relax"            if ARCH_BOARD_XMC4500RELAX
	default "xmc4700-relax"            if ARCH_BOARD_XMC4700RELAX
	default "z16f2800100zcog"          if ARCH_BOARD_Z16F2800100ZCOG
	default "z20x"                     if ARCH_BOARD_Z20X
	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 "moxa"                     if ARCH_BOARD_MOXA
	default "spresense"                if ARCH_BOARD_SPRESENSE

comment "Common Board Options"

config ARCH_HAVE_LEDS
	bool

config ARCH_LEDS
	bool "Board LED Status 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."

comment "Board-Specific Options"


if ARCH_BOARD_PCDUINO_A10
source "boards/arm/a1x/pcduino-a10/Kconfig"
endif
if ARCH_BOARD_BEAGLEBONE_BLACK
source "boards/arm/am335x/beaglebone-black/Kconfig"
endif
if ARCH_BOARD_C5471EVM
source "boards/arm/c5471/c5471evm/Kconfig"
endif
if ARCH_BOARD_SPRESENSE
source "boards/arm/cxd56xx/spresense/Kconfig"
endif
if ARCH_BOARD_NTOSD_DM320
source "boards/arm/dm320/ntosd-dm320/Kconfig"
endif
if ARCH_BOARD_EFM32G8XXSTK
source "boards/arm/efm32/efm32-g8xx-stk/Kconfig"
endif
if ARCH_BOARD_EFM32GG_STK3700
source "boards/arm/efm32/efm32gg-stk3700/Kconfig"
endif
if ARCH_BOARD_OLIMEX_EFM32G880F128_STK
source "boards/arm/efm32/olimex-efm32g880f128-stk/Kconfig"
endif
if ARCH_BOARD_S32K118EVB
source "boards/arm/s32k1xx/s32k118evb/Kconfig"
endif
if ARCH_BOARD_S32K144EVB
source "boards/arm/s32k1xx/s32k144evb/Kconfig"
endif
if ARCH_BOARD_RDDRONE_UAVCAN144
source "boards/arm/s32k1xx/rddrone-uavcan144/Kconfig"
endif
if ARCH_BOARD_RDDRONE_UAVCAN146
source "boards/arm/s32k1xx/rddrone-uavcan146/Kconfig"
endif
if ARCH_BOARD_S32K146EVB
source "boards/arm/s32k1xx/s32k146evb/Kconfig"
endif
if ARCH_BOARD_S32K148EVB
source "boards/arm/s32k1xx/s32k148evb/Kconfig"
endif
if ARCH_BOARD_SABRE_6QUAD
source "boards/arm/imx6/sabre-6quad/Kconfig"
endif
if ARCH_BOARD_IMXRT1020_EVK
source "boards/arm/imxrt/imxrt1020-evk/Kconfig"
endif
if ARCH_BOARD_IMXRT1050_EVK
source "boards/arm/imxrt/imxrt1050-evk/Kconfig"
endif
if ARCH_BOARD_IMXRT1060_EVK
source "boards/arm/imxrt/imxrt1060-evk/Kconfig"
endif
if ARCH_BOARD_TEENSY_4X
source "boards/arm/imxrt/teensy-4.x/Kconfig"
endif
if ARCH_BOARD_FREEDOM_K28F
source "boards/arm/kinetis/freedom-k28f/Kconfig"
endif
if ARCH_BOARD_FREEDOM_K64F
source "boards/arm/kinetis/freedom-k64f/Kconfig"
endif
if ARCH_BOARD_FREEDOM_K66F
source "boards/arm/kinetis/freedom-k66f/Kconfig"
endif
if ARCH_BOARD_KWIKSTIK_K40
source "boards/arm/kinetis/kwikstik-k40/Kconfig"
endif
if ARCH_BOARD_TEENSY_3X
source "boards/arm/kinetis/teensy-3.x/Kconfig"
endif
if ARCH_BOARD_TWR_K60N512
source "boards/arm/kinetis/twr-k60n512/Kconfig"
endif
if ARCH_BOARD_TWR_K64F120M
source "boards/arm/kinetis/twr-k64f120m/Kconfig"
endif
if ARCH_BOARD_FREEDOM_KL25Z
source "boards/arm/kl/freedom-kl25z/Kconfig"
endif
if ARCH_BOARD_FREEDOM_KL26Z
source "boards/arm/kl/freedom-kl26z/Kconfig"
endif
if ARCH_BOARD_TEENSY_LC
source "boards/arm/kl/teensy-lc/Kconfig"
endif
if ARCH_BOARD_LC823450_XGEVK
source "boards/arm/lc823450/lc823450-xgevk/Kconfig"
endif
if ARCH_BOARD_LINCOLN60
source "boards/arm/lpc17xx_40xx/lincoln60/Kconfig"
endif
if ARCH_BOARD_LPC4088_DEVKIT
source "boards/arm/lpc17xx_40xx/lpc4088-devkit/Kconfig"
endif
if ARCH_BOARD_LPC4088_QUICKSTART
source "boards/arm/lpc17xx_40xx/lpc4088-quickstart/Kconfig"
endif
if ARCH_BOARD_LPCXPRESSO
source "boards/arm/lpc17xx_40xx/lpcxpresso-lpc1768/Kconfig"
endif
if ARCH_BOARD_MBED
source "boards/arm/lpc17xx_40xx/mbed/Kconfig"
endif
if ARCH_BOARD_MCB1700
source "boards/arm/lpc17xx_40xx/mcb1700/Kconfig"
endif
if ARCH_BOARD_LPC1766STK
source "boards/arm/lpc17xx_40xx/olimex-lpc1766stk/Kconfig"
endif
if ARCH_BOARD_OPEN1788
source "boards/arm/lpc17xx_40xx/open1788/Kconfig"
endif
if ARCH_BOARD_PNEV5180B
source "boards/arm/lpc17xx_40xx/pnev5180b/Kconfig"
endif
if ARCH_BOARD_U_BLOX_C027
source "boards/arm/lpc17xx_40xx/u-blox-c027/Kconfig"
endif
if ARCH_BOARD_ZKITARM
source "boards/arm/lpc17xx_40xx/zkit-arm-1769/Kconfig"
endif
if ARCH_BOARD_MCU123_LPC214X
source "boards/arm/lpc214x/mcu123-lpc214x/Kconfig"
endif
if ARCH_BOARD_ZP214XPA
source "boards/arm/lpc214x/zp214xpa/Kconfig"
endif
if ARCH_BOARD_OLIMEXLPC2378
source "boards/arm/lpc2378/olimex-lpc2378/Kconfig"
endif
if ARCH_BOARD_EA3131
source "boards/arm/lpc31xx/ea3131/Kconfig"
endif
if ARCH_BOARD_EA3152
source "boards/arm/lpc31xx/ea3152/Kconfig"
endif
if ARCH_BOARD_OLIMEX_LPC_H3131
source "boards/arm/lpc31xx/olimex-lpc-h3131/Kconfig"
endif
if ARCH_BOARD_BAMBINO_200E
source "boards/arm/lpc43xx/bambino-200e/Kconfig"
endif
if ARCH_BOARD_LPC4330_XPLORER
source "boards/arm/lpc43xx/lpc4330-xplorer/Kconfig"
endif
if ARCH_BOARD_LPC4337_WS
source "boards/arm/lpc43xx/lpc4337-ws/Kconfig"
endif
if ARCH_BOARD_LPC4357_EVB
source "boards/arm/lpc43xx/lpc4357-evb/Kconfig"
endif
if ARCH_BOARD_LPC4370_LINK2
source "boards/arm/lpc43xx/lpc4370-link2/Kconfig"
endif
if ARCH_BOARD_LPCXPRESSO_LPC54628
source "boards/arm/lpc54xx/lpcxpresso-lpc54628/Kconfig"
endif
if ARCH_BOARD_LX_CPU
source "boards/arm/lpc17xx_40xx/lx_cpu/Kconfig"
endif
if ARCH_BOARD_MAX32660_EVSYS
source "boards/arm/max326xx/max32660-evsys/Kconfig"
endif
if ARCH_BOARD_MOXA
source "boards/arm/moxart/moxa/Kconfig"
endif
if ARCH_BOARD_NRF52_FEATHER
source "boards/arm/nrf52/nrf52-feather/Kconfig"
endif
if ARCH_BOARD_NRF52832_SPARKFUN
source "boards/arm/nrf52/nrf52832-sparkfun/Kconfig"
endif
if ARCH_BOARD_NRF52832_MDK
source "boards/arm/nrf52/nrf52832-mdk/Kconfig"
endif
if ARCH_BOARD_NRF52832_DK
source "boards/arm/nrf52/nrf52832-dk/Kconfig"
endif
if ARCH_BOARD_NRF52840_DK
source "boards/arm/nrf52/nrf52840-dk/Kconfig"
endif
if ARCH_BOARD_NUTINY_NUC120
source "boards/arm/nuc1xx/nutiny-nuc120/Kconfig"
endif
if ARCH_BOARD_ARDUINO_DUE
source "boards/arm/sam34/arduino-due/Kconfig"
endif
if ARCH_BOARD_ARDUINO_M0
source "boards/arm/samd2l2/arduino-m0/Kconfig"
endif
if ARCH_BOARD_FLIPNCLICK_SAM3X
source "boards/arm/sam34/flipnclick-sam3x/Kconfig"
endif
if ARCH_BOARD_SAM3UEK
source "boards/arm/sam34/sam3u-ek/Kconfig"
endif
if ARCH_BOARD_SAM4CMP_DB
source "boards/arm/sam34/sam4cmp-db/Kconfig"
endif
if ARCH_BOARD_SAM4EEK
source "boards/arm/sam34/sam4e-ek/Kconfig"
endif
if ARCH_BOARD_SAM4L_XPLAINED
source "boards/arm/sam34/sam4l-xplained/Kconfig"
endif
if ARCH_BOARD_SAM4S_XPLAINED
source "boards/arm/sam34/sam4s-xplained/Kconfig"
endif
if ARCH_BOARD_SAM4S_XPLAINED_PRO
source "boards/arm/sam34/sam4s-xplained-pro/Kconfig"
endif
if ARCH_BOARD_SAMA5D2_XULT
source "boards/arm/sama5/sama5d2-xult/Kconfig"
endif
if ARCH_BOARD_GIANT_BOARD
source "boards/arm/sama5/giant-board/Kconfig"
endif
if ARCH_BOARD_SAMA5D3X_EK
source "boards/arm/sama5/sama5d3x-ek/Kconfig"
endif
if ARCH_BOARD_SAMA5D3_XPLAINED
source "boards/arm/sama5/sama5d3-xplained/Kconfig"
endif
if ARCH_BOARD_SAMA5D4_EK
source "boards/arm/sama5/sama5d4-ek/Kconfig"
endif
if ARCH_BOARD_SAMD20_XPLAINED
source "boards/arm/samd2l2/samd20-xplained/Kconfig"
endif
if ARCH_BOARD_SAMD21_XPLAINED
source "boards/arm/samd2l2/samd21-xplained/Kconfig"
endif
if ARCH_BOARD_SAME54_XPLAINED_PRO
source "boards/arm/samd5e5/same54-xplained-pro/Kconfig"
endif
if ARCH_BOARD_SAML21_XPLAINED
source "boards/arm/samd2l2/saml21-xplained/Kconfig"
endif
if ARCH_BOARD_METRO_M4
source "boards/arm/samd5e5/metro-m4/Kconfig"
endif
if ARCH_BOARD_SAME70_XPLAINED
source "boards/arm/samv7/same70-xplained/Kconfig"
endif
if ARCH_BOARD_SAMV71_XULT
source "boards/arm/samv7/samv71-xult/Kconfig"
endif
if ARCH_BOARD_B_G474E_DPOW1
source "boards/arm/stm32/b-g474e-dpow1/Kconfig"
endif
if ARCH_BOARD_NUCLEO_G431RB
source "boards/arm/stm32/nucleo-g431rb/Kconfig"
endif
if ARCH_BOARD_B_L072Z_LRWAN1
source "boards/arm/stm32f0l0g0/b-l072z-lrwan1/Kconfig"
endif
if ARCH_BOARD_NUCLEO_F072RB
source "boards/arm/stm32f0l0g0/nucleo-f072rb/Kconfig"
endif
if ARCH_BOARD_NUCLEO_F091RC
source "boards/arm/stm32f0l0g0/nucleo-f091rc/Kconfig"
endif
if ARCH_BOARD_NUCLEO_G070RB
source "boards/arm/stm32f0l0g0/nucleo-g070rb/Kconfig"
endif
if ARCH_BOARD_NUCLEO_G071RB
source "boards/arm/stm32f0l0g0/nucleo-g071rb/Kconfig"
endif
if ARCH_BOARD_NUCLEO_L073RZ
source "boards/arm/stm32f0l0g0/nucleo-l073rz/Kconfig"
endif
if ARCH_BOARD_STM32F051_DISCOVERY
source "boards/arm/stm32f0l0g0/stm32f051-discovery/Kconfig"
endif
if ARCH_BOARD_STM32F072_DISCOVERY
source "boards/arm/stm32f0l0g0/stm32f072-discovery/Kconfig"
endif
if ARCH_BOARD_NUCLEO_144
source "boards/arm/stm32f7/nucleo-144/Kconfig"
endif
if ARCH_BOARD_STM32F746_WS
source "boards/arm/stm32f7/stm32f746-ws/Kconfig"
endif
if ARCH_BOARD_STM32F746G_DISCO
source "boards/arm/stm32f7/stm32f746g-disco/Kconfig"
endif
if ARCH_BOARD_STM32F769I_DISCO
source "boards/arm/stm32f7/stm32f769i-disco/Kconfig"
endif
if ARCH_BOARD_STM32H747I_DISCO
source "boards/arm/stm32h7/stm32h747i-disco/Kconfig"
endif
if ARCH_BOARD_NUCLEO_H743ZI
source "boards/arm/stm32h7/nucleo-h743zi/Kconfig"
endif
if ARCH_BOARD_B_L475E_IOT01A
source "boards/arm/stm32l4/b-l475e-iot01a/Kconfig"
endif
if ARCH_BOARD_NUCLEO_L432KC
source "boards/arm/stm32l4/nucleo-l432kc/Kconfig"
endif
if ARCH_BOARD_NUCLEO_L452RE
source "boards/arm/stm32l4/nucleo-l452re/Kconfig"
endif
if ARCH_BOARD_NUCLEO_L476RG
source "boards/arm/stm32l4/nucleo-l476rg/Kconfig"
endif
if ARCH_BOARD_NUCLEO_L496ZG
source "boards/arm/stm32l4/nucleo-l496zg/Kconfig"
endif
if ARCH_BOARD_STM32L476_MDK
source "boards/arm/stm32l4/stm32l476-mdk/Kconfig"
endif
if ARCH_BOARD_STM32L476VG_DISCO
source "boards/arm/stm32l4/stm32l476vg-disco/Kconfig"
endif
if ARCH_BOARD_STM32L4R9AI_DISCO
source "boards/arm/stm32l4/stm32l4r9ai-disco/Kconfig"
endif
if ARCH_BOARD_AXOLOTI
source "boards/arm/stm32/axoloti/Kconfig"
endif
if ARCH_BOARD_CLICKER2_STM32
source "boards/arm/stm32/clicker2-stm32/Kconfig"
endif
if ARCH_BOARD_CLOUDCTRL
source "boards/arm/stm32/cloudctrl/Kconfig"
endif
if ARCH_BOARD_FIRE_STM32
source "boards/arm/stm32/fire-stm32v2/Kconfig"
endif
if ARCH_BOARD_HYMINI_STM32V
source "boards/arm/stm32/hymini-stm32v/Kconfig"
endif
if ARCH_BOARD_MAPLE
source "boards/arm/stm32/maple/Kconfig"
endif
if ARCH_BOARD_MIKROE_STM32F4
source "boards/arm/stm32/mikroe-stm32f4/Kconfig"
endif
if ARCH_BOARD_NUCLEO_F103RB
source "boards/arm/stm32/nucleo-f103rb/Kconfig"
endif
if ARCH_BOARD_NUCLEO_F207ZG
source "boards/arm/stm32/nucleo-f207zg/Kconfig"
endif
if ARCH_BOARD_NUCLEO_F302R8
source "boards/arm/stm32/nucleo-f302r8/Kconfig"
endif
if ARCH_BOARD_NUCLEO_F303RE
source "boards/arm/stm32/nucleo-f303re/Kconfig"
endif
if ARCH_BOARD_NUCLEO_F303ZE
source "boards/arm/stm32/nucleo-f303ze/Kconfig"
endif
if ARCH_BOARD_NUCLEO_F334R8
source "boards/arm/stm32/nucleo-f334r8/Kconfig"
endif
if ARCH_BOARD_NUCLEO_F410RB
source "boards/arm/stm32/nucleo-f410rb/Kconfig"
endif
if ARCH_BOARD_NUCLEO_F412ZG
source "boards/arm/stm32/nucleo-f412zg/Kconfig"
endif
if ARCH_BOARD_NUCLEO_F44RE
source "boards/arm/stm32/nucleo-f446re/Kconfig"
endif
if ARCH_BOARD_NUCLEO_F401RE || ARCH_BOARD_NUCLEO_F411RE
source "boards/arm/stm32/nucleo-f4x1re/Kconfig"
endif
if ARCH_BOARD_NUCLEO_F429ZI
source "boards/arm/stm32/nucleo-f429zi/Kconfig"
endif
if ARCH_BOARD_NUCLEO_L152RE
source "boards/arm/stm32/nucleo-l152re/Kconfig"
endif
if ARCH_BOARD_OLIMEX_STM32E407
source "boards/arm/stm32/olimex-stm32-e407/Kconfig"
endif
if ARCH_BOARD_OLIMEX_STM32H405
source "boards/arm/stm32/olimex-stm32-h405/Kconfig"
endif
if ARCH_BOARD_OLIMEX_STM32H407
source "boards/arm/stm32/olimex-stm32-h407/Kconfig"
endif
if ARCH_BOARD_OLIMEX_STM32P107
source "boards/arm/stm32/olimex-stm32-p107/Kconfig"
endif
if ARCH_BOARD_OLIMEX_STM32P207
source "boards/arm/stm32/olimex-stm32-p207/Kconfig"
endif
if ARCH_BOARD_OLIMEX_STM32P407
source "boards/arm/stm32/olimex-stm32-p407/Kconfig"
endif
if ARCH_BOARD_OLIMEXINO_STM32
source "boards/arm/stm32/olimexino-stm32/Kconfig"
endif
if ARCH_BOARD_OMNIBUSF4
source "boards/arm/stm32/omnibusf4/Kconfig"
endif
if ARCH_BOARD_PHOTON
source "boards/arm/stm32/photon/Kconfig"
endif
if ARCH_BOARD_SHENZHOU
source "boards/arm/stm32/shenzhou/Kconfig"
endif
if ARCH_BOARD_STM3210E_EVAL
source "boards/arm/stm32/stm3210e-eval/Kconfig"
endif
if ARCH_BOARD_STM3220G_EVAL
source "boards/arm/stm32/stm3220g-eval/Kconfig"
endif
if ARCH_BOARD_STM3240G_EVAL
source "boards/arm/stm32/stm3240g-eval/Kconfig"
endif
if ARCH_BOARD_STM32_TINY
source "boards/arm/stm32/stm32_tiny/Kconfig"
endif
if ARCH_BOARD_STM32_BUTTERFLY2
source "boards/arm/stm32/stm32butterfly2/Kconfig"
endif
if ARCH_BOARD_STM32F103_MINIMUM
source "boards/arm/stm32/stm32f103-minimum/Kconfig"
endif
if ARCH_BOARD_STM32F411_MINIMUM
source "boards/arm/stm32/stm32f411-minimum/Kconfig"
endif
if ARCH_BOARD_STM32F334_DISCO
source "boards/arm/stm32/stm32f334-disco/Kconfig"
endif
if ARCH_BOARD_STM32F3_DISCOVERY
source "boards/arm/stm32/stm32f3discovery/Kconfig"
endif
if ARCH_BOARD_STM32F411E_DISCO
source "boards/arm/stm32/stm32f411e-disco/Kconfig"
endif
if ARCH_BOARD_STM32F429I_DISCO
source "boards/arm/stm32/stm32f429i-disco/Kconfig"
endif
if ARCH_BOARD_STM32F4_DISCOVERY
source "boards/arm/stm32/stm32f4discovery/Kconfig"
endif
if ARCH_BOARD_STM32L_DISCOVERY
source "boards/arm/stm32/stm32ldiscovery/Kconfig"
endif
if ARCH_BOARD_STM32VL_DISCOVERY
source "boards/arm/stm32/stm32vldiscovery/Kconfig"
endif
if ARCH_BOARD_VIEWTOOL_STM32F107
source "boards/arm/stm32/viewtool-stm32f107/Kconfig"
endif
if ARCH_BOARD_OLIMEX_STRP711
source "boards/arm/str71x/olimex-strp711/Kconfig"
endif
if ARCH_BOARD_DK_TM4C129X
source "boards/arm/tiva/dk-tm4c129x/Kconfig"
endif
if ARCH_BOARD_EAGLE100
source "boards/arm/tiva/eagle100/Kconfig"
endif
if ARCH_BOARD_EKKLM3S9B96
source "boards/arm/tiva/ekk-lm3s9b96/Kconfig"
endif
if ARCH_BOARD_LAUNCHXL_CC1310
source "boards/arm/tiva/launchxl-cc1310/Kconfig"
endif
if ARCH_BOARD_LAUNCHXL_CC1312R1
source "boards/arm/tiva/launchxl-cc1312r1/Kconfig"
endif
if ARCH_BOARD_LM3S6432S2E
source "boards/arm/tiva/lm3s6432-s2e/Kconfig"
endif
if ARCH_BOARD_LM3S6965EK
source "boards/arm/tiva/lm3s6965-ek/Kconfig"
endif
if ARCH_BOARD_LM3S8962EK
source "boards/arm/tiva/lm3s8962-ek/Kconfig"
endif
if ARCH_BOARD_LM3S8962EK
source "boards/arm/tiva/lm4f120-launchpad/Kconfig"
endif
if ARCH_BOARD_TM4C123G_LAUNCHPAD
source "boards/arm/tiva/tm4c123g-launchpad/Kconfig"
endif
if ARCH_BOARD_TM4C1294_LAUNCHPAD
source "boards/arm/tiva/tm4c1294-launchpad/Kconfig"
endif
if ARCH_BOARD_LAUNCHXL_TMS57004
source "boards/arm/tms570/launchxl-tms57004/Kconfig"
endif
if ARCH_BOARD_TMS570LS31X_USB_KIT
source "boards/arm/tms570/tms570ls31x-usb-kit/Kconfig"
endif
if ARCH_BOARD_XMC4500RELAX
source "boards/arm/xmc4/xmc4500-relax/Kconfig"
endif
if ARCH_BOARD_XMC4700RELAX
source "boards/arm/xmc4/xmc4700-relax/Kconfig"
endif
if ARCH_BOARD_AVR32DEV1
source "boards/avr/at32uc3/avr32dev1/Kconfig"
endif
if ARCH_BOARD_MICROPENDOUS3
source "boards/avr/at90usb/micropendous3/Kconfig"
endif
if ARCH_BOARD_TEENSY_20
source "boards/avr/at90usb/teensy-2.0/Kconfig"
endif
if ARCH_BOARD_AMBER
source "boards/avr/atmega/amber/Kconfig"
endif
if ARCH_BOARD_ARDUINO_MEGA2560
source "boards/avr/atmega/arduino-mega2560/Kconfig"
endif
if ARCH_BOARD_MOTEINO_MEGA
source "boards/avr/atmega/moteino-mega/Kconfig"
endif
if ARCH_BOARD_CUSTOM
source "boards/dummy/Kconfig"
endif
if ARCH_BOARD_DEMOS92S12NEC64
source "boards/hc/m9s12/demo9s12ne64/Kconfig"
endif
if ARCH_BOARD_NE64BADGE
source "boards/hc/m9s12/ne64badge/Kconfig"
endif
if ARCH_BOARD_MIRTOO
source "boards/mips/pic32mx/mirtoo/Kconfig"
endif
if ARCH_BOARD_PIC32MX_STARTERKIT
source "boards/mips/pic32mx/pic32mx-starterkit/Kconfig"
endif
if ARCH_BOARD_PIC32MX7MMB
source "boards/mips/pic32mx/pic32mx7mmb/Kconfig"
endif
if ARCH_BOARD_SUREPIC32MX
source "boards/mips/pic32mx/sure-pic32mx/Kconfig"
endif
if ARCH_BOARD_UBW32
source "boards/mips/pic32mx/ubw32/Kconfig"
endif
if ARCH_BOARD_FLIPNCLICK_PIC32MZ
source "boards/mips/pic32mz/flipnclick-pic32mz/Kconfig"
endif
if ARCH_BOARD_PIC32MZ_STARTERKIT
source "boards/mips/pic32mz/pic32mz-starterkit/Kconfig"
endif
if ARCH_BOARD_MISOC_QEMU || ARCH_BOARD_MISOC_VERILATOR
source "boards/misoc/lm32/misoc/Kconfig"
endif
if ARCH_BOARD_OR1K
source "boards/or1k/mor1kx/or1k/Kconfig"
endif
if ARCH_BOARD_SKP16C26
source "boards/renesas/m16c/skp16c26/Kconfig"
endif
if ARCH_BOARD_US7032EVB1
source "boards/renesas/sh1/us7032evb1/Kconfig"
endif
if ARCH_BOARD_ARTY_A7
source "boards/risc-v/litex/arty_a7/Kconfig"
endif
if ARCH_BOARD_GAPUINO
source "boards/risc-v/gap8/gapuino/Kconfig"
endif
if ARCH_BOARD_NR5M100_NEXYS4
source "boards/risc-v/nr5m100/nr5m100-nexys4/Kconfig"
endif
if ARCH_BOARD_HIFIVE_REVB
source "boards/risc-v/fe310/hifive1-revb/Kconfig"
endif
if ARCH_BOARD_MAIX_BIT
source "boards/risc-v/k210/maix-bit/Kconfig"
endif
if ARCH_BOARD_SIM
source "boards/sim/sim/sim/Kconfig"
endif
if ARCH_BOARD_QEMU_I486
source "boards/x86/qemu/qemu-i486/Kconfig"
endif
if ARCH_BOARD_INTEL64_QEMU
source "boards/x86_64/intel64/qemu-intel64/Kconfig"
endif
if ARCH_BOARD_RX65N
source "boards/renesas/rx65n/rx65n/Kconfig"
endif
if ARCH_BOARD_RX65N_RSK1MB
source "boards/renesas/rx65n/rx65n-rsk1mb/Kconfig"
endif
if ARCH_BOARD_RX65N_RSK2MB
source "boards/renesas/rx65n/rx65n-rsk2mb/Kconfig"
endif
if ARCH_BOARD_RX65N_GRROSE
source "boards/renesas/rx65n/rx65n-grrose/Kconfig"
endif
if ARCH_BOARD_ESP32CORE
source "boards/xtensa/esp32/esp32-core/Kconfig"
endif
if ARCH_BOARD_Z16F2800100ZCOG
source "boards/z16/z16f/z16f2800100zcog/Kconfig"
endif
if ARCH_BOARD_EZ80F910200KITG
source "boards/z80/ez80/ez80f910200kitg/Kconfig"
endif
if ARCH_BOARD_EZ80F910200ZCO
source "boards/z80/ez80/ez80f910200zco/Kconfig"
endif
if ARCH_BOARD_MAKERLISP
source "boards/z80/ez80/makerlisp/Kconfig"
endif
if ARCH_BOARD_P112
source "boards/z80/z180/p112/Kconfig"
endif
if ARCH_BOARD_Z8ENCORE000ZCO
source "boards/z80/z8/z8encore000zco/Kconfig"
endif
if ARCH_BOARD_Z8F64200100KIT
source "boards/z80/z8/z8f64200100kit/Kconfig"
endif
if ARCH_BOARD_Z20X
source "boards/z80/ez80/z20x/Kconfig"
endif
if ARCH_BOARD_Z80SIM
source "boards/z80/z80/z80sim/Kconfig"
endif

config BOARD_CRASHDUMP
	bool "Enable Board level logging of crash dumps"
	default n
	---help---
		If selected up_assert will call out to board_crashdump, in the case
		of an assertion failure, prior to calling exit. Or in the
		case of a hardfault prior to looping indefinitely. board_crashdump
		then has a chance to save the state of the machine.

		The purpose of board_crashdump is to save as much information as it can
		about the cause of the fault and then most likely reset the system.

		N.B. There is limited system resources that can be used, who knows
		what memory is trashed? So all we can expect to do is save the
		"machine state" in a place where on the next reset can write it
		to more sophisticated storage in a sane operating environment.

config BOARD_ENTROPY_POOL
	bool "Enable Board level storing of entropy pool structure"
	default n
	depends on CRYPTO_RANDOM_POOL
	---help---
		Entropy pool structure can be provided by board source.
		Use for this is, for example, to allocate entropy pool
		from special area of RAM which content is kept over
		system reset.

config BOARD_INITRNGSEED
	bool "Enable Board level initial seeding of entropy pool RNG"
	default n
	depends on CRYPTO_RANDOM_POOL
	---help---
		If enabled, entropy pool random number generator will call
		board_init_rndseed() upon initialization. This function
		can then provide early entropy seed to the pool through
		entropy injection APIs provided at 'nuttx/random.h'.
#endif

config LIB_BOARDCTL
	bool "Enable boardctl() interface"
	default n
	---help---
		Enables support for the boardctl() interface.  Architecture
		specific logic must provide board_app_initialize() interface.

if LIB_BOARDCTL

config BOARDCTL_FINALINIT
	bool "Enable board app final init"
	default n
	---help---
		Enables support for the BOARDIOC_FINALINIT boardctl() command.
		Architecture specific logic must provide board_app_finalinitialize()
		interface.

config BOARDCTL_POWEROFF
	bool "Enable power off interfaces"
	default n
	depends on ARCH_HAVE_POWEROFF
	---help---
		Enables support for the BOARDIOC_POWEROFF boardctl() command.
		Architecture specific logic must provide the board_power_off()
		interface.

config BOARDCTL_RESET
	bool "Enable reset interfaces"
	default n
	depends on ARCH_HAVE_RESET
	---help---
		Enables support for the BOARDIOC_RESET boardctl() command.
		Architecture specific logic must provide the board_reset()
		interface.

config BOARD_RESET_ON_ASSERT
	int "Enable Board Reset after assert"
	default 0
	depends on BOARDCTL_RESET
	---help---
		== 0 up_assert never reset the machine
		>= 1 up_assert from interrupt handler or IDLE thread will reset the
		     machine
		>= 2 up_assert from user or kernel thread will reset the machine.
		     The default behavior is just to kill the asserting thread.

config BOARD_ASSERT_RESET_VALUE
	int "Board reset argument"
	default 0
	depends on BOARDCTL_RESET
	---help---
		Parameter that will be passed to board_reset() by when an
		assertion occurs.  This may be used by board_reset()
		implementations to handle the reset differently for the
		case of a crash.

config BOARDCTL_UNIQUEID
	bool "Return board unique ID"
	default n
	---help---
		Enables support for the BOARDIOC_UNIQUEID boardctl() command.
		Architecture specific logic must provide the board_uniqueid()
		interface.

config BOARDCTL_UNIQUEID_SIZE
	int "Size of the board unique ID (bytes)"
	default 16
	depends on BOARDCTL_UNIQUEID
	---help---
		Provides the size of the memory buffer that must be provided by the
		caller of board_uniqueid() in which to receive the board unique ID.

config BOARDCTL_MKRD
	bool "Enable application space creation of RAM disks"
	default n
	select DRVR_MKRD
	depends on !DISABLE_MOUNTPOINT
	---help---
		Enables support for the BOARDIOC_MKRD boardctl() command.

config BOARDCTL_ROMDISK
	bool "Enable application space creation of ROM disks"
	default n
	depends on !DISABLE_MOUNTPOINT
	---help---
		Enables support for the BOARDIOC_MKRD boardctl() command.

config BOARDCTL_APP_SYMTAB
	bool "Enable application symbol table interfaces"
	default n
	---help---
		Enables support for the BOARDIOC_APP_SYMTAB boardctl() command.

config BOARDCTL_OS_SYMTAB
	bool "Enable kernel module symbol table interfaces"
	default n
	depends on MODULE
	---help---
		Enables support for the BOARDIOC_OS_SYMTAB boardctl() command.

config BOARDCTL_USBDEVCTRL
	bool "Enable USB device controls"
	default n
	depends on USBDEV
	---help---
		Enables support for the BOARDIOC_USBDEV_CONTROL boardctl() command.

config BOARDCTL_TESTSET
	bool "Architecture-specific test/set operation"
	default n
	---help---
		Enables support for the BOARDIOC_SPINLOCK boardctl() command.
		Architecture specific logic must provide up_testset() interface.

config BOARDCTL_IOCTL
	bool "Board-specific boardctl() commands"
	default n
	---help---
		Enables support for board-specific boardctl() commands.
		Architecture specific logic must provide board_ioctl() interface.

endif # LIB_BOARDCTL