# es-WiFi driver options

# Copyright (c) 2018 Linaro
# SPDX-License-Identifier: Apache-2.0

menuconfig WIFI_ESWIFI
	bool "Inventek eS-WiFi support"
	default y
	depends on DT_HAS_INVENTEK_ESWIFI_ENABLED || DT_HAS_INVENTEK_ESWIFI_UART_ENABLED
	select NET_L2_WIFI_MGMT
	select WIFI_OFFLOAD
	select NET_OFFLOAD
	select NET_SOCKETS
	imply NET_SOCKETS_OFFLOAD
	select GPIO

if WIFI_ESWIFI

choice WIFI_ESWIFI_BUS
	bool "Select BUS interface"
	default WIFI_ESWIFI_BUS_SPI

config WIFI_ESWIFI_BUS_SPI
	bool "SPI Bus interface"
	select SPI

config WIFI_ESWIFI_BUS_UART
	bool "UART Bus interface"
	select SERIAL
	select RING_BUFFER

endchoice

config WIFI_ESWIFI_MAX_DATA_SIZE
	int "esWiFi message size"
	default 1600
	range 500 4000
	help
	  This option sets the size of the esWiFi message buffer.
	  It can be increased to handle larger messages, like scan results.

config WIFI_ESWIFI_THREAD_PRIO
	int "esWiFi threads priority"
	default 2
	help
	  This option sets the priority of the esWiFi threads.
	  Do not touch it unless you know what you are doing.

config WIFI_ESWIFI_SHELL
	bool "esWiFi shell"
	depends on SHELL
	help
	  Enable esWiFi shell

endif
