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

if ARCH_BOARD_RASPBERRYPI_PICO_W

config RP2040_LCD_SPI_CH
	int "RP2040 LCD SPI channel number"
	default 0
	range 0 1
	depends on LCD
	---help---
		Select SPI channel number to use LCD display.

config RP2040_ENC28J60_SPI_CH
	int "ENC28J60 SPI channel number"
	default 1
	range 0 1
	depends on ENC28J60
	---help---
		Select SPI channel number to use ENC28J60 ethernet.

config RP2040_ENC28J60_INTR_GPIO
	int "ENC28J60 interrupt GPIO pin assign"
	default -1
	range -1 29
	depends on ENC28J60

config RP2040_ENC28J60_RESET_GPIO
	int "ENC28J60 reset GPIO pin assign (optional)"
	default -1
	range -1 29
	depends on ENC28J60

menuconfig RP2040_INFINEON_CYW43439
	bool "Has Infineon cyw43439 WiFi chip"
	depends on IEEE80211_INFINEON_CYW43439
  default y
endif

if RP2040_INFINEON_CYW43439

	config CYW43439_FIRMWARE_BIN_PATH
		string "Path to Infineon 43439 firmware file"
		default "${PICO_SDK_PATH}/lib/cyw43-driver/firmware/43439A0-7.95.49.00.combined"
		---help---
			This should be a path to a file containing both the cyw43439 firmware and
			the CLB blob.   The firmware should be padded to a 256 byte boundary and
			then the CLM blob should be appended.

			If this file is updated, check the CYW43439_FIRMWARE_LEN below to make sure
			it reflects the un-padded length of the firmware part.

	config CYW43439_FIRMWARE_LEN
		int "Infineon 43439 firmware length (bytes)"
		default 224190
		---help---
			This is the length of just the base firmware in the firmware file specified
			by the "Path to Infineon 43439 firmware file" configuration option.  
			
			This length does not include the length of any padding nor the length of
			the appended clm_blob. If a clm_blob is present in the firmware file, this 
			length will be less than the length of the whole file.


endif
