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

comment "ARMV7M Configuration Options"

choice
	prompt "Toolchain Selection"
	default ARMV7M_TOOLCHAIN_GNU_EABIW if HOST_WINDOWS
	default ARMV7M_TOOLCHAIN_GNU_EABIL if !HOST_WINDOWS

config ARMV7M_TOOLCHAIN_ATOLLIC
	bool "Atollic Lite/Pro for Windows"
	depends on HOST_WINDOWS

config ARMV7M_TOOLCHAIN_BUILDROOT
	bool "Buildroot (Cygwin or Linux)"
	depends on !WINDOWS_NATIVE

config ARMV7M_TOOLCHAIN_CODEREDL
	bool "CodeRed for Linux"
	depends on HOST_LINUX

config ARMV7M_TOOLCHAIN_CODEREDW
	bool "CodeRed for Windows"
	depends on HOST_WINDOWS

config ARMV7M_TOOLCHAIN_CODESOURCERYL
	bool "CodeSourcery GNU toolchain under Linux"
	depends on HOST_LINUX

config ARMV7M_TOOLCHAIN_CODESOURCERYW
	bool "CodeSourcery GNU toolchain under Windows"
	depends on HOST_WINDOWS

config ARMV7M_TOOLCHAIN_DEVKITARM
	bool "devkitARM GNU toolchain"
	depends on HOST_WINDOWS

config ARMV7M_TOOLCHAIN_GNU_EABIL
	bool "Generic GNU EABI toolchain under Linux (or other POSIX environment)"
	---help---
		This option should work for any modern GNU toolchain (GCC 4.5 or newer)
		configured for arm-none-eabi.

config ARMV7M_TOOLCHAIN_GNU_EABIW
	bool "Generic GNU EABI toolchain under Windows"
	depends on HOST_WINDOWS
	---help---
		This option should work for any modern GNU toolchain (GCC 4.5 or newer)
		configured for arm-none-eabi.

config ARMV7M_TOOLCHAIN_RAISONANCE
	bool "STMicro Raisonance for Windows"
	depends on HOST_WINDOWS

endchoice

config ARMV7M_OABI_TOOLCHAIN
	bool "OABI (vs EABI)"
	default n
	depends on ARMV7M_TOOLCHAIN_BUILDROOT
	---help---
		Most of the older buildroot toolchains are OABI and are named
		arm-nuttx-elf- vs. arm-nuttx-eabi-

config ARMV7M_ITMSYSLOG
	bool "ITM SYSLOG support"
	default n
	select SYSLOG
	---help---
		Enable hooks to support ITM syslog output.  This requires additional
		MCU support in order to be used.  See arch/arm/src/armv7-m/itm_syslog.h
		for additional initialization information.

if ARMV7M_ITMSYSLOG

config ARMV7M_ITMSYSLOG_PORT
	int "ITM SYSLOG Port"
	default 0
	range 0 31

config ARMV7M_ITMSYSLOG_SWODIV
	int "ITM SYSLOG SWO divider"
	default 15
	range 1 8192

endif # ARMV7M_ITMSYSLOG
