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

if ARCH_BOARD_VIEWTOOL_STM32F107

config VIEWTOOL_HIGHPRI
	bool "High priority interrupt test"
	default n
	depends on ARCH_CHIP_STM32F103VC && ARCH_HIPRI_INTERRUPT
	---help---
		This selection enables building of the custom test for the Cortex-M
		high priority, nested interrupts.  ARCH_HIPRI_INTERRUPT must first
		be enabled.  This test is only implemented on the STM32F103VCT6
		(ARCH_CHIP_STM32F103VC) but should be easily ported to other STM32
		architectures.

if VIEWTOOL_HIGHPRI

config VIEWTOOL_TIM6_FREQUENCY
	int "TIM6 Frequency"
	default 36000000
	---help---
		TIM6 is used to drive the high priority, nested interrupt in the
		test enabled with VIEWTOOL_HIGHPRI.  This setting specifies the
		frequency of the TIM6 input clock.

config VIEWTOOL_TIM6_PERIOD
	int "TIM6 Period"
	default 36000
	---help---
		TIM6 is used to drive the high priority, nested interrupt in the
		test enabled with VIEWTOOL_HIGHPRI.  This setting specifies
		period of the TIM6 interrupt in units of VIEWTOOL_TIM6_FREQUENCY.

endif # VIEWTOOL_HIGHPRI

if LCD_FT80X_SPI && ((STM32_SPI1 && !STM32_SPI1_REMAP) || STM32_SPI2)

choice
	prompt "FT80x SPI Selection"
	default VIEWTOOL_FT80X_SPI1 if STM32_SPI1 && !STM32_SPI1_REMAP
	default VIEWTOOL_FT80X_SPI2 if STM32_SPI2 && (!STM32_SPI1 || STM32_SPI1_REMAP)

config VIEWTOOL_FT80X_SPI1
	bool "FT80x on SPI1"
	depends on STM32_SPI1 && !STM32_SPI1_REMAP

config VIEWTOOL_FT80X_SPI2
	bool "FT80x on SPI2"
	depends on STM32_SPI2

endchoice # FT80x SPI Selection

config VIEWTOOL_FT80X_INITFREQUENCY
	int "FT80x initialization frequency"
	default 400000
	range 400000 11000000

config VIEWTOOL_FT80X_OPFREQUENCY
	int "FT80x operational frequency"
	default 20000000
	range 400000 30000000

endif # LCD_FT80X_SPI && ((STM32_SPI1 && !STM32_SPI1_REMAP) || STM32_SPI2)

if USBHOST_MAX3421E && ((STM32_SPI1 && !STM32_SPI1_REMAP) || STM32_SPI2)

choice
	prompt "MAX3421E SPI Selection"
	default VIEWTOOL_MAX3421E_SPI1 if STM32_SPI1 && !STM32_SPI1_REMAP && !VIEWTOOL_FT80X_SPI1
	default VIEWTOOL_MAX3421E_SPI2 if STM32_SPI2 && (!STM32_SPI1 || STM32_SPI1_REMAP) && !VIEWTOOL_FT80X_SPI2

config VIEWTOOL_MAX3421E_SPI1
	bool "MAX3421E on SPI1"
	depends on STM32_SPI1 && !STM32_SPI1_REMAP && !VIEWTOOL_FT80X_SPI1

config VIEWTOOL_MAX3421E_SPI2
	bool "MAX3421E on SPI2"
	depends on STM32_SPI2 && !VIEWTOOL_FT80X_SPI2

endchoice # MAX3421E SPI Selection

config VIEWTOOL_MAX3421E_FREQUENCY
	int "MAX3421E operational frequency"
	default 20000000
	range 400000 26000000

config VIEWTOOL_MAX3421E_RST
	bool "MAX3421E reset pin"
	default y

config VIEWTOOL_MAX3421E_PWR
	bool "USB Host power control"
	default n

config VIEWTOOL_MAX3421E_CONNMON_STACKSIZE
	int "MAX3421E USB connection monitor stack size"
	default 2048

config VIEWTOOL_MAX3421E_CONNMON_PRIORITY
	int "MAX3421E USB connection monitor priority"
	default 100
	range 1 255

endif # USBHOST_MAX3421E && ((STM32_SPI1 && !STM32_SPI1_REMAP) || STM32_SPI2)
endif # ARCH_BOARD_VIEWTOOL_STM32F107