menu "General"

config CARL9170FW_RELEASE_VERSION
	int
	default 1

menu "Selectable Hardware Options"

choice
	prompt "Receiver Max. Frame Length"
	default CARL9170FW_RX_FRAME_LEN_8192

	config CARL9170FW_RX_FRAME_LEN_4096
		bool "4096"

	config CARL9170FW_RX_FRAME_LEN_8192
		bool "8192"

	config CARL9170FW_RX_FRAME_LEN_16384
		bool "16384"

	config CARL9170FW_RX_FRAME_LEN_32768
		bool "32768"

endchoice

config CARL9170FW_RX_FRAME_LEN
	int
	default 4096 if CARL9170FW_RX_FRAME_LEN_4096
	default 8192 if CARL9170FW_RX_FRAME_LEN_8192
	default 16384 if CARL9170FW_RX_FRAME_LEN_16384
	default 32768 if CARL9170FW_RX_FRAME_LEN_32768

config CARL9170FW_GPIO_INTERRUPT
	def_bool y
	prompt "GPIO Software Interrupt"
	---help---
	 When this option is enabled, the firmware will poll the GPIO
	 registers and reports to the driver whenever the GPIO state
	 has changed from a previous state.

	 Note: This feature is necessary to monitor the WPS button,
	       if you have one on your device, then say Y.

config CARL9170FW_SECURITY_ENGINE
	def_bool y
	prompt "Support Hardware Crypto Engine"
	---help---
	 This options controls if the firmware will allow the driver
	 to program the security engine / CAM through a firmware
	 interface.

	 Say Y. Unless you want to do the en- and decryption for
	 CCMP(AES), TKIP/WEP(RC4) in the application anyway.

config CARL9170FW_RADIO_FUNCTIONS
	def_bool y
	prompt "Enable Firmware-supported Radio/RF functions"
	---help---
	 Some PHY/RF functions (e.g.: AGC and Noise calibration) need
	 to be done in the firmware.

	 Say Y, unless you really don't need the Radio/RF for
	 your project.

endmenu

menu "802.11 Firmware Features"

config CARL9170FW_CAB_QUEUE
	def_bool y
	prompt "Support software-based Content after Beacon Queue"
	---help---
	 This (software) queue is used to send any broad-/multi-cast buffered
	 frames after the next DTIM beacon.

	 This feature is required for Accesspoint mode operation.

	 Say Y.

endmenu

source "carlfw/usb/Kconfig"

menu "Experimental, Unstable & Testing Extensions"

config CARL9170FW_PRINTF
	def_bool y
	prompt "Advanced printf"
	depends on CARL9170FW_DEBUG_UART || CARL9170FW_DEBUG_USB
	---help---
	 Advanced printf (very useful for debugging purposes)
	 The formats supported by this implementation are:
		'd' 'u' 'c' 's' 'x' 'X' 'p'.

	 Note: If this option is disabled, the firmware will be only
	       capable of reported _preformated_ string.

config CARL9170FW_EXPERIMENTAL
	def_bool y
	prompt "Experimental Features"

config CARL9170FW_WOL_OPTION
	def_bool n
	prompt "Wakeup on WLAN"
	depends on CARL9170FW_EXPERIMENTAL
	---help---
	 With this option enabled, the firmware can wake-up
	 suspended hosts... As long as they fully support
	 USB remote wakeup.

config CARL9170FW_WOL
	def_bool n
	depends on CARL9170FW_WOL_OPTION

config CARL9170FW_WOL_NL80211_TRIGGERS
	def_bool n
	prompt "Standard NL80211 wakeup triggers"
	depends on CARL9170FW_WOL_OPTION
	select CARL9170FW_WOL
	---help---
	 Available triggers:
	  * Magic Packet(tm) pattern
	  * disconnect event

config CARL9170FW_WOL_PROBE_REQUEST
	def_bool n
	prompt "Probe Request"
	depends on CARL9170FW_WOL_OPTION
	select CARL9170FW_WOL
	---help---
	 Scan probe requests for a given SSID.

config CARL9170FW_WOL_PROBE_REQUEST_SSID
	string
	prompt "Wakeup on WLAN SSID"
	default "CARL9170_WAKEUP"
	depends on CARL9170FW_WOL_PROBE_REQUEST

config CARL9170FW_VIFS_NUM
	default 1
	int
	prompt "Number of additional pseudo virtual interfaces"
	depends on CARL9170FW_EXPERIMENTAL

config CARL9170FW_FW_MAC_RESET
	def_bool y
	prompt "Firmware MAC Chip recovery"
	depends on CARL9170FW_EXPERIMENTAL

config CARL9170FW_NOISY_MAC_RESET
	def_bool n
	prompt "Notify MAC RESET events"
	depends on CARL9170FW_FW_MAC_RESET

config CARL9170FW_BROKEN_FEATURES
	def_bool n
	prompt "Broken Featurs"

config CARL9170FW_DEBUG
	def_bool n
	depends on CARL9170FW_BROKEN_FEATURES && CARL9170FW_PRINTF
	prompt "Enable verbose debugging messages"

config CARL9170FW_DEBUG_LED_HEARTBEAT
	def_bool n
	prompt "LED Heartbeat"
	depends on CARL9170FW_BROKEN_FEATURES
	---help---
	 This option conflicts with the application's LED code.
	 Also, it assumes that you have two LEDs, which is not
	 necessarily true.

config CARL9170FW_DEBUG_UART
	def_bool n
	prompt "Pass debug messages through Highspeed UART"
	depends on CARL9170FW_BROKEN_FEATURES
	---help---
	 This option allows the firmware to send BUG/ERR/INFO/DBG and
	 hexdumps through the UART _as well_. However, first: you must
	 connect a working logger.

config CARL9170FW_WATCHDOG_BUTTON
	def_bool n
	depends on CARL9170FW_BROKEN && CARL9170FW_GPIO_INTERRUPT
	prompt "Trigger Watchdog by pressing the WPS button"

choice CARL9170FW_UART_CLOCK
	prompt "UART Clock"
	depends on CARL9170FW_DEBUG_UART
	default CARL9170FW_UART_CLOCK_40M

config CARL9170FW_UART_CLOCK_25M
	bool "25"

config CARL9170FW_UART_CLOCK_40M
	bool "40"

endchoice

config CARL9170FW_UNUSABLE
	def_bool y
	depends on CARL9170FW_BROKEN || CARL9170FW_DEBUG

config CARL9170FW_USB_MODESWITCH
	def_bool n
	prompt "USB 1.1 / 2.0 switching support"
	depends on CARL9170FW_BROKEN_FEATURES
	---help---
	 Mostly implemented, but untested and some serious
	 doubts remain.

config CARL9170FW_DMA_QUEUE_BUMP
	def_bool n
	prompt "Bump a stuck TX queue before doing a MAC reset"
	depends on CARL9170FW_BROKEN_FEATURES

menu "Build Options"
config CARL9170FW_AGGRESSIVE_CFLAGS
	def_bool y
	prompt "Enable aggressive size optimization"
	---help---
	 This option adds several more optimization compiler flags,
	 which can greatly reduce the firmware size... at the expense
	 of machine-code readability.

	  Say Y. Else the firmware might not fit onto the device!

endmenu

endmenu

endmenu
