mirror of
https://github.com/garagetinkering/Video_Game_Mini_Maps.git
synced 2026-01-18 01:57:00 +01:00
1848 lines
65 KiB
Plaintext
1848 lines
65 KiB
Plaintext
config ESP_HOSTED_ENABLED
|
|
bool
|
|
default y if ESP_WIFI_REMOTE_ENABLED && ESP_WIFI_REMOTE_LIBRARY_HOSTED
|
|
default n
|
|
|
|
menu "ESP-Hosted config"
|
|
depends on ESP_HOSTED_ENABLED
|
|
|
|
# Co-processor selection done in Wi-Fi Remote Component
|
|
comment "ESP32 is Slave Target from Wi-Fi Remote Component"
|
|
depends on SLAVE_IDF_TARGET_ESP32
|
|
comment "ESP32-S2 is Slave Target from Wi-Fi Remote Component"
|
|
depends on SLAVE_IDF_TARGET_ESP32S2
|
|
comment "ESP32-S3 is Slave Target from Wi-Fi Remote Component"
|
|
depends on SLAVE_IDF_TARGET_ESP32S3
|
|
comment "ESP32-C2 is Slave Target from Wi-Fi Remote Component"
|
|
depends on SLAVE_IDF_TARGET_ESP32C2
|
|
comment "ESP32-C3 is Slave Target from Wi-Fi Remote Component"
|
|
depends on SLAVE_IDF_TARGET_ESP32C3
|
|
comment "ESP32-C6 is Slave Target from Wi-Fi Remote Component"
|
|
depends on SLAVE_IDF_TARGET_ESP32C6
|
|
comment "ESP32-C5 is Slave Target from Wi-Fi Remote Component"
|
|
depends on SLAVE_IDF_TARGET_ESP32C5
|
|
comment "ESP32-C61 is Slave Target from Wi-Fi Remote Component"
|
|
depends on SLAVE_IDF_TARGET_ESP32C61
|
|
|
|
choice ESP_HOSTED_P4_DEV_BOARD
|
|
bool "Configure GPIOs for Development Board"
|
|
depends on IDF_TARGET_ESP32P4
|
|
default ESP_HOSTED_P4_DEV_BOARD_NONE
|
|
help
|
|
Sets GPIOs used for transport on these ESP32-P4 Development Boards
|
|
- ESP32-P4 Function_EV_Board with on-board ESP32-C6
|
|
- ESP32-P4 Function_EV_Board with ESP32-C5 on a EV board
|
|
- ESP32-P4 Function_EV_Board with ESP32-C2 on a EV board
|
|
- ESP32-P4-C5 Code Board with on-board ESP32-C5
|
|
Select "No development board" if you want to modify GPIOs used
|
|
|
|
config ESP_HOSTED_P4_DEV_BOARD_NONE
|
|
bool "No development board"
|
|
|
|
config ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD
|
|
depends on SLAVE_IDF_TARGET_ESP32C6 || SLAVE_IDF_TARGET_ESP32C5 || SLAVE_IDF_TARGET_ESP32C2
|
|
bool "ESP32-P4-Function-EV-Board with on-board C6 or C5/C2 on EV board"
|
|
|
|
config ESP_HOSTED_P4_C5_CORE_BOARD
|
|
depends on SLAVE_IDF_TARGET_ESP32C5
|
|
bool "ESP32-P4-C5 Core Board with on-board C5"
|
|
|
|
endchoice
|
|
|
|
# y if SDIO Transport is available, based on host and slave selection
|
|
config ESP_HOSTED_PRIV_SDIO_OPTION
|
|
bool
|
|
default y if (IDF_TARGET_ESP32 || IDF_TARGET_ESP32S3 || IDF_TARGET_ESP32P4) && (SLAVE_IDF_TARGET_ESP32 || SLAVE_IDF_TARGET_ESP32C6 || SLAVE_IDF_TARGET_ESP32C5 || SLAVE_IDF_TARGET_ESP32C61)
|
|
default n
|
|
|
|
# y if SPI HD Transport is available, based on host and slave selection
|
|
config ESP_HOSTED_PRIV_SPI_HD_OPTION
|
|
bool
|
|
default n if (IDF_TARGET_ESP32 || SLAVE_IDF_TARGET_ESP32)
|
|
default y
|
|
|
|
choice ESP_HOSTED_HOST_INTERFACE
|
|
bool "Transport layer"
|
|
default ESP_HOSTED_SDIO_HOST_INTERFACE if ESP_HOSTED_PRIV_SDIO_OPTION
|
|
default ESP_HOSTED_SPI_HOST_INTERFACE
|
|
help
|
|
Bus interface to be used for communication with the host
|
|
|
|
config ESP_HOSTED_SPI_HOST_INTERFACE
|
|
bool "SPI Full-duplex"
|
|
help
|
|
Enable/Disable SPI Full-duplex host interface
|
|
|
|
config ESP_HOSTED_SDIO_HOST_INTERFACE
|
|
depends on ESP_HOSTED_PRIV_SDIO_OPTION
|
|
bool "SDIO"
|
|
help
|
|
Enable/Disable SDIO host interface
|
|
|
|
# SPI Half Duplex is not supported in ESP32
|
|
config ESP_HOSTED_SPI_HD_HOST_INTERFACE
|
|
depends on ESP_HOSTED_PRIV_SPI_HD_OPTION
|
|
bool "SPI Half-duplex"
|
|
help
|
|
Enable/Disable SPI Half-duplex host interface
|
|
|
|
config ESP_HOSTED_UART_HOST_INTERFACE
|
|
bool "UART"
|
|
help
|
|
Enable/Disable UART host interface
|
|
endchoice
|
|
|
|
config ESP_HOSTED_IDF_SLAVE_TARGET
|
|
string
|
|
default "esp32" if SLAVE_IDF_TARGET_ESP32
|
|
default "esp32s2" if SLAVE_IDF_TARGET_ESP32S2
|
|
default "esp32s3" if SLAVE_IDF_TARGET_ESP32S3
|
|
default "esp32c2" if SLAVE_IDF_TARGET_ESP32C2
|
|
default "esp32c3" if SLAVE_IDF_TARGET_ESP32C3
|
|
default "esp32c6" if SLAVE_IDF_TARGET_ESP32C6
|
|
default "esp32c5" if SLAVE_IDF_TARGET_ESP32C5
|
|
default "esp32c61" if SLAVE_IDF_TARGET_ESP32C61
|
|
default "invalid"
|
|
|
|
menu "SPI Configuration"
|
|
depends on ESP_HOSTED_SPI_HOST_INTERFACE
|
|
|
|
choice ESP_HOSTED_SPI_PRIV_MODE_ESP32
|
|
depends on SLAVE_IDF_TARGET_ESP32
|
|
bool "Host SPI mode"
|
|
default ESP_HOSTED_SPI_PRIV_MODE_2_ESP32
|
|
|
|
config ESP_HOSTED_SPI_PRIV_MODE_0_ESP32
|
|
bool "Host SPI mode 0"
|
|
|
|
config ESP_HOSTED_SPI_PRIV_MODE_1_ESP32
|
|
bool "Host SPI mode 1"
|
|
|
|
config ESP_HOSTED_SPI_PRIV_MODE_2_ESP32
|
|
bool "Host SPI mode 2"
|
|
|
|
config ESP_HOSTED_SPI_PRIV_MODE_3_ESP32
|
|
bool "Host SPI mode 3"
|
|
endchoice
|
|
|
|
choice ESP_HOSTED_SPI_PRIV_MODE_ESP32XX
|
|
depends on !SLAVE_IDF_TARGET_ESP32
|
|
bool "Host SPI mode"
|
|
default ESP_HOSTED_SPI_PRIV_MODE_3_ESP32XX
|
|
|
|
config ESP_HOSTED_SPI_PRIV_MODE_0_ESP32XX
|
|
bool "Host SPI mode 0"
|
|
|
|
config ESP_HOSTED_SPI_PRIV_MODE_1_ESP32XX
|
|
bool "Host SPI mode 1"
|
|
|
|
config ESP_HOSTED_SPI_PRIV_MODE_2_ESP32XX
|
|
bool "Host SPI mode 2"
|
|
|
|
config ESP_HOSTED_SPI_PRIV_MODE_3_ESP32XX
|
|
bool "Host SPI mode 3"
|
|
endchoice
|
|
|
|
config ESP_HOSTED_SPI_MODE
|
|
int
|
|
default 0 if ESP_HOSTED_SPI_PRIV_MODE_0_ESP32
|
|
default 1 if ESP_HOSTED_SPI_PRIV_MODE_1_ESP32
|
|
default 2 if ESP_HOSTED_SPI_PRIV_MODE_2_ESP32
|
|
default 3 if ESP_HOSTED_SPI_PRIV_MODE_3_ESP32
|
|
default 0 if ESP_HOSTED_SPI_PRIV_MODE_0_ESP32XX
|
|
default 1 if ESP_HOSTED_SPI_PRIV_MODE_1_ESP32XX
|
|
default 2 if ESP_HOSTED_SPI_PRIV_MODE_2_ESP32XX
|
|
default 3 if ESP_HOSTED_SPI_PRIV_MODE_3_ESP32XX
|
|
|
|
choice ESP_HOSTED_SPI_CONTROLLER
|
|
bool "Host SPI controller to use"
|
|
default ESP_HOSTED_SPI_HSPI
|
|
|
|
config ESP_HOSTED_SPI_HSPI
|
|
bool "HSPI/FSPI"
|
|
help
|
|
"HSPI/FSPI: SPI_controller_1"
|
|
|
|
config ESP_HOSTED_SPI_VSPI
|
|
depends on IDF_TARGET_ESP32
|
|
bool "VSPI"
|
|
help
|
|
"VSPI: SPI_controller_2"
|
|
|
|
endchoice
|
|
|
|
config ESP_HOSTED_SPI_CONTROLLER
|
|
int
|
|
default 2 if ESP_HOSTED_SPI_VSPI
|
|
default 1
|
|
|
|
menu "Host SPI GPIOs Config"
|
|
|
|
choice ESP_HOSTED_SPI_HANDSHAKE_GPIO_CONFIG
|
|
bool "Handshake GPIO Config"
|
|
default ESP_HOSTED_HS_ACTIVE_HIGH
|
|
|
|
config ESP_HOSTED_HS_ACTIVE_HIGH
|
|
bool "HS: Active High"
|
|
config ESP_HOSTED_HS_ACTIVE_LOW
|
|
bool "HS: Active Low"
|
|
endchoice
|
|
|
|
choice ESP_HOSTED_SPI_DATAREADY__GPIO_CONFIG
|
|
bool "DataReady GPIO Config"
|
|
default ESP_HOSTED_DR_ACTIVE_HIGH
|
|
|
|
config ESP_HOSTED_DR_ACTIVE_HIGH
|
|
bool "DR: Active High"
|
|
config ESP_HOSTED_DR_ACTIVE_LOW
|
|
bool "DR: Active Low"
|
|
endchoice
|
|
|
|
choice ESP_HOSTED_SPI_RESET_GPIO_CONFIG
|
|
bool "Reset GPIO Config"
|
|
default ESP_HOSTED_SPI_RESET_ACTIVE_HIGH
|
|
help
|
|
"If Active High, High->Low->High will trigger reset (Low will trigger reset)
|
|
If Active Low, Low->High->Low will trigger reset (High will trigger reset)"
|
|
|
|
config ESP_HOSTED_SPI_RESET_ACTIVE_HIGH
|
|
bool "RESET: Active High"
|
|
config ESP_HOSTED_SPI_RESET_ACTIVE_LOW
|
|
bool "RESET: Active Low"
|
|
endchoice
|
|
|
|
config ESP_HOSTED_SPI_MOSI_RANGE_MIN
|
|
int
|
|
default 14 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 23 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 23 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default 0
|
|
|
|
config ESP_HOSTED_SPI_MOSI_RANGE_MAX
|
|
int
|
|
default 14 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 23 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 23 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default 100
|
|
|
|
config ESP_HOSTED_SPI_HSPI_GPIO_MOSI
|
|
depends on ESP_HOSTED_SPI_HSPI
|
|
int "GPIO pin for Host MOSI"
|
|
default 8 if IDF_TARGET_ESP32P4
|
|
default 13 if IDF_TARGET_ESP32
|
|
default 11 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3
|
|
default 5 if IDF_TARGET_ESP32H2
|
|
default 7
|
|
range ESP_HOSTED_SPI_MOSI_RANGE_MIN ESP_HOSTED_SPI_MOSI_RANGE_MAX
|
|
help
|
|
SPI controller Host MOSI
|
|
|
|
config ESP_HOSTED_SPI_MISO_RANGE_MIN
|
|
int
|
|
default 15 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 22 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 22 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default 0
|
|
|
|
config ESP_HOSTED_SPI_MISO_RANGE_MAX
|
|
int
|
|
default 15 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 22 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 22 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default 100
|
|
|
|
config ESP_HOSTED_SPI_HSPI_GPIO_MISO
|
|
depends on ESP_HOSTED_SPI_HSPI
|
|
int "GPIO pin for Host MISO"
|
|
default 10 if IDF_TARGET_ESP32P4
|
|
default 12 if IDF_TARGET_ESP32
|
|
default 13 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3
|
|
default 0 if IDF_TARGET_ESP32H2
|
|
default 2
|
|
range ESP_HOSTED_SPI_MISO_RANGE_MIN ESP_HOSTED_SPI_MISO_RANGE_MAX
|
|
help
|
|
SPI controller Host MISO
|
|
|
|
config ESP_HOSTED_SPI_CLK_RANGE_MIN
|
|
int
|
|
default 18 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 33 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 33 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default 0
|
|
|
|
config ESP_HOSTED_SPI_CLK_RANGE_MAX
|
|
int
|
|
default 18 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 33 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 33 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default 100
|
|
|
|
config ESP_HOSTED_SPI_HSPI_GPIO_CLK
|
|
depends on ESP_HOSTED_SPI_HSPI
|
|
int "GPIO pin for Host CLK"
|
|
default 9 if IDF_TARGET_ESP32P4
|
|
default 14 if IDF_TARGET_ESP32
|
|
default 12 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3
|
|
default 4 if IDF_TARGET_ESP32H2
|
|
default 6
|
|
range ESP_HOSTED_SPI_CLK_RANGE_MIN ESP_HOSTED_SPI_CLK_RANGE_MAX
|
|
help
|
|
SPI controller Host CLK
|
|
|
|
config ESP_HOSTED_SPI_CS_RANGE_MIN
|
|
int
|
|
default 19 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 4 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 4 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default 0
|
|
|
|
config ESP_HOSTED_SPI_CS_RANGE_MAX
|
|
int
|
|
default 19 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 4 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 4 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default 100
|
|
|
|
config ESP_HOSTED_SPI_HSPI_GPIO_CS
|
|
depends on ESP_HOSTED_SPI_HSPI
|
|
int "GPIO pin for Host CS"
|
|
default 7 if IDF_TARGET_ESP32P4
|
|
default 15 if IDF_TARGET_ESP32
|
|
default 10 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3
|
|
default 1 if IDF_TARGET_ESP32H2
|
|
default 10
|
|
range ESP_HOSTED_SPI_CS_RANGE_MIN ESP_HOSTED_SPI_CS_RANGE_MAX
|
|
help
|
|
SPI controller Host CS
|
|
|
|
config ESP_HOSTED_SPI_VSPI_GPIO_MOSI
|
|
depends on ESP_HOSTED_SPI_VSPI
|
|
int "GPIO pin for Host MOSI"
|
|
default 23
|
|
help
|
|
SPI controller Host MOSI
|
|
|
|
config ESP_HOSTED_SPI_VSPI_GPIO_MISO
|
|
depends on ESP_HOSTED_SPI_VSPI
|
|
int "GPIO pin for Host MISO"
|
|
default 19
|
|
help
|
|
SPI controller Host MISO
|
|
|
|
config ESP_HOSTED_SPI_VSPI_GPIO_CLK
|
|
depends on ESP_HOSTED_SPI_VSPI
|
|
int "GPIO pin for Host CLK"
|
|
default 18
|
|
help
|
|
SPI controller Host CLK
|
|
|
|
config ESP_HOSTED_SPI_VSPI_GPIO_CS
|
|
depends on ESP_HOSTED_SPI_VSPI
|
|
int "GPIO pin for Host CS"
|
|
default 5
|
|
help
|
|
SPI controller Host CS
|
|
|
|
config ESP_HOSTED_SPI_GPIO_MOSI
|
|
int
|
|
default ESP_HOSTED_SPI_VSPI_GPIO_MOSI if ESP_HOSTED_SPI_VSPI
|
|
default ESP_HOSTED_SPI_HSPI_GPIO_MOSI
|
|
|
|
config ESP_HOSTED_SPI_GPIO_MISO
|
|
int
|
|
default ESP_HOSTED_SPI_VSPI_GPIO_MISO if ESP_HOSTED_SPI_VSPI
|
|
default ESP_HOSTED_SPI_HSPI_GPIO_MISO
|
|
|
|
config ESP_HOSTED_SPI_GPIO_CLK
|
|
int
|
|
default ESP_HOSTED_SPI_VSPI_GPIO_CLK if ESP_HOSTED_SPI_VSPI
|
|
default ESP_HOSTED_SPI_HSPI_GPIO_CLK
|
|
|
|
config ESP_HOSTED_SPI_GPIO_CS
|
|
int
|
|
default ESP_HOSTED_SPI_VSPI_GPIO_CS if ESP_HOSTED_SPI_VSPI
|
|
default ESP_HOSTED_SPI_HSPI_GPIO_CS
|
|
|
|
config ESP_HOSTED_SPI_HANDSHAKE_RANGE_MIN
|
|
int
|
|
default 16 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 21 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 21 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default 0
|
|
|
|
config ESP_HOSTED_SPI_HANDSHAKE_RANGE_MAX
|
|
int
|
|
default 16 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 21 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 21 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default 100
|
|
|
|
config ESP_HOSTED_SPI_GPIO_HANDSHAKE
|
|
int "GPIO pin for handshake"
|
|
default 6 if IDF_TARGET_ESP32P4
|
|
default 3 if IDF_TARGET_ESP32C2 || IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C6
|
|
default 17 if IDF_TARGET_ESP32S3 || IDF_TARGET_ESP32S2
|
|
default 22 if IDF_TARGET_ESP32H2
|
|
default 26
|
|
range ESP_HOSTED_SPI_HANDSHAKE_RANGE_MIN ESP_HOSTED_SPI_HANDSHAKE_RANGE_MAX
|
|
help
|
|
GPIO pin to use for handshake with other spi controller
|
|
|
|
config ESP_HOSTED_SPI_DATA_READY_RANGE_MIN
|
|
int
|
|
default 17 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 32 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 32 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default 0
|
|
|
|
config ESP_HOSTED_SPI_DATA_READY_RANGE_MAX
|
|
int
|
|
default 17 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 32 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 32 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default 100
|
|
|
|
config ESP_HOSTED_SPI_GPIO_DATA_READY
|
|
int "GPIO pin for data ready interrupt"
|
|
default 11 if IDF_TARGET_ESP32P4
|
|
default 12 if IDF_TARGET_ESP32H2
|
|
default 4
|
|
range ESP_HOSTED_SPI_DATA_READY_RANGE_MIN ESP_HOSTED_SPI_DATA_READY_RANGE_MAX
|
|
help
|
|
GPIO pin for indicating host that SPI slave has data to be read by host
|
|
|
|
config ESP_HOSTED_SPI_RESET_RANGE_MIN
|
|
int
|
|
default 54 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 53 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 53 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default 0
|
|
|
|
config ESP_HOSTED_SPI_RESET_RANGE_MAX
|
|
int
|
|
default 54 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 53 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 53 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default 100
|
|
|
|
config ESP_HOSTED_SPI_GPIO_RESET_SLAVE
|
|
int "GPIO pin for Reseting slave ESP"
|
|
default 12 if IDF_TARGET_ESP32P4
|
|
default 10 if IDF_TARGET_ESP32H2
|
|
default 5
|
|
range ESP_HOSTED_SPI_RESET_RANGE_MIN ESP_HOSTED_SPI_RESET_RANGE_MAX
|
|
help
|
|
GPIO pin for Resetting ESP SPI slave device. Should be connected to RST/EN of ESP SPI slave device.
|
|
endmenu
|
|
|
|
ESP32XX_SPI_CLK_FREQ_RANGE_MIN := 1
|
|
ESP32_SPI_CLK_FREQ_RANGE_MAX := 10
|
|
ESP32C6_SPI_CLK_FREQ_RANGE_MAX := 40
|
|
ESP32XX_SPI_CLK_FREQ_RANGE_MAX := 40
|
|
|
|
config ESP_HOSTED_SPI_FREQ_ESP32
|
|
depends on SLAVE_IDF_TARGET_ESP32
|
|
int "SPI Clock Freq (MHz)"
|
|
default 10
|
|
range $(ESP32XX_SPI_CLK_FREQ_RANGE_MIN) $(ESP32_SPI_CLK_FREQ_RANGE_MAX)
|
|
help
|
|
"Optimize SPI CLK by increasing till host practically can support"
|
|
|
|
config ESP_HOSTED_SPI_FREQ_ESP32C6
|
|
depends on SLAVE_IDF_TARGET_ESP32C6
|
|
int "SPI Clock Freq (MHz)"
|
|
default 40 if IDF_TARGET_ESP32P4 #config for ESP32-P4 Function_EV_Board
|
|
default 26
|
|
range $(ESP32XX_SPI_CLK_FREQ_RANGE_MIN) $(ESP32C6_SPI_CLK_FREQ_RANGE_MAX)
|
|
help
|
|
"Optimize SPI CLK by increasing till host practically can support"
|
|
|
|
config ESP_HOSTED_SPI_FREQ_ESP32XX
|
|
depends on SLAVE_IDF_TARGET_ESP32C2 || SLAVE_IDF_TARGET_ESP32C3 || SLAVE_IDF_TARGET_ESP32S2 || SLAVE_IDF_TARGET_ESP32S3 || SLAVE_IDF_TARGET_ESP32C5 || SLAVE_IDF_TARGET_ESP32C61
|
|
int "SPI Clock Freq"
|
|
default 40 if SLAVE_IDF_TARGET_ESP32C2 || SLAVE_IDF_TARGET_ESP32C3 || SLAVE_IDF_TARGET_ESP32S2 || SLAVE_IDF_TARGET_ESP32S3 || SLAVE_IDF_TARGET_ESP32C5 || SLAVE_IDF_TARGET_ESP32C61
|
|
range $(ESP32XX_SPI_CLK_FREQ_RANGE_MIN) $(ESP32XX_SPI_CLK_FREQ_RANGE_MAX)
|
|
help
|
|
"Optimize SPI CLK by increasing till host practically can support"
|
|
|
|
config ESP_HOSTED_SPI_CLK_FREQ
|
|
int
|
|
default ESP_HOSTED_SPI_FREQ_ESP32 if SLAVE_IDF_TARGET_ESP32
|
|
default ESP_HOSTED_SPI_FREQ_ESP32C6 if SLAVE_IDF_TARGET_ESP32C6
|
|
default ESP_HOSTED_SPI_FREQ_ESP32XX if SLAVE_IDF_TARGET_ESP32C2 || SLAVE_IDF_TARGET_ESP32C3 || SLAVE_IDF_TARGET_ESP32S2 || SLAVE_IDF_TARGET_ESP32S3 || SLAVE_IDF_TARGET_ESP32C5 || SLAVE_IDF_TARGET_ESP32C61
|
|
help
|
|
"Optimize SPI CLK by increasing till host practically can support"
|
|
|
|
config ESP_HOSTED_SPI_TX_Q_SIZE
|
|
int "ESP to Host SPI queue size"
|
|
default 20
|
|
help
|
|
Very small tx queue will lower ESP -- SPI --> Host data rate
|
|
|
|
config ESP_HOSTED_SPI_RX_Q_SIZE
|
|
int "Host to ESP SPI queue size"
|
|
default 20
|
|
help
|
|
Very small RX queue will lower ESP <-- SPI -- Host data rate
|
|
|
|
endmenu
|
|
|
|
menu "Hosted SDIO Configuration"
|
|
depends on ESP_HOSTED_SDIO_HOST_INTERFACE
|
|
|
|
choice ESP_HOSTED_SDIO_RESET_GPIO_CONFIG
|
|
bool "RESET GPIO Config"
|
|
default ESP_HOSTED_SDIO_RESET_ACTIVE_HIGH
|
|
help
|
|
"If Active High, High->Low->High will trigger reset (Low will trigger reset)
|
|
If Active Low, Low->High->Low will trigger reset (High will trigger reset)"
|
|
|
|
config ESP_HOSTED_SDIO_RESET_ACTIVE_HIGH
|
|
bool "RESET: Active High"
|
|
config ESP_HOSTED_SDIO_RESET_ACTIVE_LOW
|
|
bool "RESET: Active Low"
|
|
endchoice
|
|
|
|
choice ESP_HOSTED_SDIO_RX_OPTIMIZATION
|
|
bool "SDIO Receive Optimization"
|
|
default ESP_HOSTED_SDIO_OPTIMIZATION_RX_STREAMING_MODE
|
|
|
|
config ESP_HOSTED_SDIO_OPTIMIZATION_RX_NONE
|
|
bool "No optimization"
|
|
help
|
|
Use SDIO as is, with no optimizations.
|
|
|
|
config ESP_HOSTED_SDIO_OPTIMIZATION_RX_MAX_SIZE
|
|
bool "Always Rx Max Packet size"
|
|
help
|
|
Always read max Rx Packet Size (512 * 3 bytes). This saves one SDIO
|
|
transaction (get Rx Packet Size) when reading data from slave by
|
|
always transferring a fixed amount of data. Extra data at end of valid
|
|
packet data is discarded.
|
|
|
|
config ESP_HOSTED_SDIO_OPTIMIZATION_RX_STREAMING_MODE
|
|
bool "Use Streaming Mode"
|
|
help
|
|
Receive a stream of queued data from the slave, made up of one or more
|
|
packets of data. Host extracts packets from the stream. This improves
|
|
SDIO read performance by doing one large read transaction instead of
|
|
many smaller read transactions for each packet.
|
|
(Note: requires slave to support streaming mode.)
|
|
|
|
endchoice
|
|
|
|
choice
|
|
prompt "SDIO Slot To Use"
|
|
default ESP_HOSTED_SDIO_SLOT_1
|
|
help
|
|
On the ESP32-P4 EV Board:
|
|
- Slot 0 connects to the MicroSD Card slot
|
|
- Slot 1 connects to the on-board ESP32-C6
|
|
For the ESP32, Slot 0 is usually occupied by SPI Flash and not usable for SDIO.
|
|
For the ESP32-P4, Slot 0 is IOMUXed and GPIO values cannot be changed
|
|
|
|
config ESP_HOSTED_SDIO_SLOT_0
|
|
depends on IDF_TARGET_ESP32P4 || IDF_TARGET_ESP32S3
|
|
bool "Slot 0"
|
|
|
|
config ESP_HOSTED_SDIO_SLOT_1
|
|
bool "Slot 1"
|
|
endchoice
|
|
|
|
config ESP_HOSTED_SDIO_SLOT
|
|
int
|
|
default 0 if ESP_HOSTED_SDIO_SLOT_0
|
|
default 1 if ESP_HOSTED_SDIO_SLOT_1
|
|
|
|
config ESP_HOSTED_SD_PWR_CTRL_LDO_INTERNAL_IO
|
|
depends on SOC_SDMMC_IO_POWER_EXTERNAL
|
|
bool "SDIO power supply comes from internal LDO IO (READ HELP!)"
|
|
default n
|
|
help
|
|
Only needed when the SDIO module is connected to specific IO pins which can be used for high-speed SDIO.
|
|
Please read the schematic first and check if the SD VDD is connected to any internal LDO output.
|
|
Unselect this option if the SDIO is powered by an external power supply.
|
|
For ESP32-P4 EV Board, SDMMC slot 0 may require internal LDO output.
|
|
|
|
config ESP_HOSTED_SD_PWR_CTRL_LDO_IO_ID
|
|
depends on SOC_SDMMC_IO_POWER_EXTERNAL && ESP_HOSTED_SD_PWR_CTRL_LDO_INTERNAL_IO
|
|
int "LDO ID"
|
|
default 4 if IDF_TARGET_ESP32P4
|
|
help
|
|
Please check your schematic first and input your LDO ID.
|
|
|
|
choice
|
|
prompt "SDIO Bus Width"
|
|
default ESP_HOSTED_SDIO_4_BIT_BUS
|
|
help
|
|
Select the SDIO Bus Width to use
|
|
|
|
config ESP_HOSTED_SDIO_4_BIT_BUS
|
|
bool "4 Bits"
|
|
|
|
config ESP_HOSTED_SDIO_1_BIT_BUS
|
|
bool "1 Bit"
|
|
endchoice
|
|
|
|
config ESP_HOSTED_SDIO_BUS_WIDTH
|
|
int
|
|
default 1 if ESP_HOSTED_SDIO_1_BIT_BUS
|
|
default 4
|
|
|
|
ESP32_SDIO_CLK_FREQ_KHZ_RANGE_MIN := 400
|
|
ESP32_SDIO_CLK_FREQ_KHZ_RANGE_MAX := 40000
|
|
ESP32XX_SDIO_CLK_FREQ_KHZ_RANGE_MIN := 400
|
|
ESP32XX_SDIO_CLK_FREQ_KHZ_RANGE_MAX := 50000
|
|
|
|
config ESP_HOSTED_SDIO_CLOCK_FREQ_KHZ
|
|
int "SDIO Clock Freq (in kHz)"
|
|
default 40000
|
|
range $(ESP32_SDIO_CLK_FREQ_KHZ_RANGE_MIN) $(ESP32_SDIO_CLK_FREQ_KHZ_RANGE_MAX) if IDF_TARGET_ESP32
|
|
range $(ESP32XX_SDIO_CLK_FREQ_KHZ_RANGE_MIN) $(ESP32XX_SDIO_CLK_FREQ_KHZ_RANGE_MAX) if IDF_TARGET_ESP32S3 || IDF_TARGET_ESP32P4
|
|
help
|
|
"Optimize SDIO CLK by increasing till host practically can support. Clock frequency for ESP32-P4 as host <= 40MHz"
|
|
|
|
config ESP_HOSTED_SDIO_CMD_GPIO_RANGE_MIN
|
|
int
|
|
default 51 if ESP_HOSTED_P4_C5_CORE_BOARD
|
|
default 19 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 4 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 15 if IDF_TARGET_ESP32
|
|
default 0
|
|
|
|
config ESP_HOSTED_SDIO_CMD_GPIO_RANGE_MAX
|
|
int
|
|
default 51 if ESP_HOSTED_P4_C5_CORE_BOARD
|
|
default 19 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 4 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 15 if IDF_TARGET_ESP32
|
|
default 100
|
|
|
|
config ESP_HOSTED_SDIO_CLK_GPIO_RANGE_MIN
|
|
int
|
|
default 50 if ESP_HOSTED_P4_C5_CORE_BOARD
|
|
default 18 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 33 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 14 if IDF_TARGET_ESP32
|
|
default 0
|
|
|
|
config ESP_HOSTED_SDIO_CLK_GPIO_RANGE_MAX
|
|
int
|
|
default 50 if ESP_HOSTED_P4_C5_CORE_BOARD
|
|
default 18 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 33 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 14 if IDF_TARGET_ESP32
|
|
default 100
|
|
|
|
config ESP_HOSTED_SDIO_D0_GPIO_RANGE_MIN
|
|
int
|
|
default 49 if ESP_HOSTED_P4_C5_CORE_BOARD
|
|
default 14 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 20 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 2 if IDF_TARGET_ESP32
|
|
default 0
|
|
|
|
config ESP_HOSTED_SDIO_D0_GPIO_RANGE_MAX
|
|
int
|
|
default 49 if ESP_HOSTED_P4_C5_CORE_BOARD
|
|
default 14 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 20 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 2 if IDF_TARGET_ESP32
|
|
default 100
|
|
|
|
config ESP_HOSTED_SDIO_D1_GPIO_RANGE_MIN
|
|
int
|
|
default 48 if ESP_HOSTED_P4_C5_CORE_BOARD
|
|
default 15 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 23 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 4 if IDF_TARGET_ESP32
|
|
default 0
|
|
|
|
config ESP_HOSTED_SDIO_D1_GPIO_RANGE_MAX
|
|
int
|
|
default 48 if ESP_HOSTED_P4_C5_CORE_BOARD
|
|
default 15 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 23 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 4 if IDF_TARGET_ESP32
|
|
default 100
|
|
|
|
config ESP_HOSTED_SDIO_D2_GPIO_RANGE_MIN
|
|
int
|
|
default 53 if ESP_HOSTED_P4_C5_CORE_BOARD
|
|
default 16 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 21 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 12 if IDF_TARGET_ESP32
|
|
default 0
|
|
|
|
config ESP_HOSTED_SDIO_D2_GPIO_RANGE_MAX
|
|
int
|
|
default 53 if ESP_HOSTED_P4_C5_CORE_BOARD
|
|
default 16 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 21 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 12 if IDF_TARGET_ESP32
|
|
default 100
|
|
|
|
config ESP_HOSTED_SDIO_D3_GPIO_RANGE_MIN
|
|
int
|
|
default 52 if ESP_HOSTED_P4_C5_CORE_BOARD
|
|
default 17 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 22 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 13 if IDF_TARGET_ESP32
|
|
default 0
|
|
|
|
config ESP_HOSTED_SDIO_D3_GPIO_RANGE_MAX
|
|
int
|
|
default 52 if ESP_HOSTED_P4_C5_CORE_BOARD
|
|
default 17 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 22 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 13 if IDF_TARGET_ESP32
|
|
default 100
|
|
|
|
config ESP_HOSTED_SDIO_RESET_SLAVE_GPIO_MIN
|
|
int
|
|
default 54 if ESP_HOSTED_P4_C5_CORE_BOARD
|
|
default 54 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 53 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 5 if IDF_TARGET_ESP32
|
|
default 0
|
|
help
|
|
GPIO pin for Resetting ESP SDIO slave device. Should be connected to RST/EN of ESP SDIO slave device.
|
|
|
|
config ESP_HOSTED_SDIO_RESET_SLAVE_GPIO_MAX
|
|
int
|
|
default 54 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 53 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 5 if IDF_TARGET_ESP32
|
|
default 100
|
|
|
|
### *START* GPIO SDIO pin configurations for Slot 0 and 1
|
|
config ESP_HOSTED_PRIV_SDIO_PIN_CMD_SLOT_0
|
|
depends on ESP_HOSTED_SDIO_SLOT_0
|
|
int "CMD GPIO number"
|
|
default 47 if IDF_TARGET_ESP32S3
|
|
range 44 44 if IDF_TARGET_ESP32P4
|
|
range 15 15 if IDF_TARGET_ESP32
|
|
help
|
|
"Value can only be configured for some targets. Displayed always for reference."
|
|
|
|
config ESP_HOSTED_PRIV_SDIO_PIN_CMD_SLOT_1
|
|
depends on ESP_HOSTED_SDIO_SLOT_1
|
|
int "CMD GPIO number"
|
|
default 47 if IDF_TARGET_ESP32S3
|
|
default 19 if IDF_TARGET_ESP32P4
|
|
default 15 if IDF_TARGET_ESP32
|
|
range ESP_HOSTED_SDIO_CMD_GPIO_RANGE_MIN ESP_HOSTED_SDIO_CMD_GPIO_RANGE_MAX
|
|
help
|
|
CMD GPIO pin for SDIO. Range enforced dynamically based on slave target to ensure IOMUX compliance.
|
|
|
|
config ESP_HOSTED_PRIV_SDIO_PIN_CLK_SLOT_0
|
|
depends on ESP_HOSTED_SDIO_SLOT_0
|
|
int "CLK GPIO number"
|
|
default 19 if IDF_TARGET_ESP32S3
|
|
range 43 43 if IDF_TARGET_ESP32P4
|
|
range 14 14 if IDF_TARGET_ESP32
|
|
help
|
|
"Value can only be configured for some targets. Displayed always for reference."
|
|
|
|
config ESP_HOSTED_PRIV_SDIO_PIN_CLK_SLOT_1
|
|
depends on ESP_HOSTED_SDIO_SLOT_1
|
|
int "CLK GPIO number"
|
|
default 19 if IDF_TARGET_ESP32S3
|
|
default 18 if IDF_TARGET_ESP32P4
|
|
default 14 if IDF_TARGET_ESP32
|
|
range ESP_HOSTED_SDIO_CLK_GPIO_RANGE_MIN ESP_HOSTED_SDIO_CLK_GPIO_RANGE_MAX
|
|
help
|
|
CLK GPIO pin for SDIO. Range enforced dynamically based on slave target to ensure IOMUX compliance.
|
|
|
|
config ESP_HOSTED_PRIV_SDIO_PIN_D0_SLOT_0
|
|
depends on ESP_HOSTED_SDIO_SLOT_0
|
|
int "D0 GPIO number"
|
|
default 13 if IDF_TARGET_ESP32S3
|
|
range 39 39 if IDF_TARGET_ESP32P4
|
|
range 2 2 if IDF_TARGET_ESP32
|
|
help
|
|
"Value can only be configured for some targets. Displayed always for reference."
|
|
|
|
config ESP_HOSTED_PRIV_SDIO_PIN_D0_SLOT_1
|
|
depends on ESP_HOSTED_SDIO_SLOT_1
|
|
int "D0 GPIO number"
|
|
default 13 if IDF_TARGET_ESP32S3
|
|
default 14 if IDF_TARGET_ESP32P4
|
|
default 2 if IDF_TARGET_ESP32
|
|
range ESP_HOSTED_SDIO_D0_GPIO_RANGE_MIN ESP_HOSTED_SDIO_D0_GPIO_RANGE_MAX
|
|
help
|
|
D0 GPIO pin for SDIO. Range enforced dynamically based on slave target to ensure IOMUX compliance.
|
|
|
|
if ESP_HOSTED_SDIO_4_BIT_BUS
|
|
config ESP_HOSTED_PRIV_SDIO_PIN_D1_4BIT_BUS_SLOT_0
|
|
depends on ESP_HOSTED_SDIO_SLOT_0
|
|
int "D1 GPIO number"
|
|
default 35 if IDF_TARGET_ESP32S3
|
|
range 40 40 if IDF_TARGET_ESP32P4
|
|
range 4 4 if IDF_TARGET_ESP32
|
|
help
|
|
"Value can only be configured for some targets. Displayed always for reference."
|
|
|
|
config ESP_HOSTED_PRIV_SDIO_PIN_D1_4BIT_BUS_SLOT_1
|
|
depends on ESP_HOSTED_SDIO_SLOT_1
|
|
int "D1 GPIO number"
|
|
default 35 if IDF_TARGET_ESP32S3
|
|
default 15 if IDF_TARGET_ESP32P4
|
|
default 4 if IDF_TARGET_ESP32
|
|
range ESP_HOSTED_SDIO_D1_GPIO_RANGE_MIN ESP_HOSTED_SDIO_D1_GPIO_RANGE_MAX
|
|
help
|
|
D1 GPIO pin for SDIO. Range enforced dynamically based on slave target to ensure IOMUX compliance.
|
|
|
|
config ESP_HOSTED_PRIV_SDIO_PIN_D2_4BIT_BUS_SLOT_0
|
|
depends on ESP_HOSTED_SDIO_SLOT_0
|
|
int "D2 GPIO number"
|
|
default 20 if IDF_TARGET_ESP32S3
|
|
range 41 41 if IDF_TARGET_ESP32P4
|
|
range 12 12 if IDF_TARGET_ESP32
|
|
help
|
|
"Value can only be configured for some targets. Displayed always for reference."
|
|
|
|
config ESP_HOSTED_PRIV_SDIO_PIN_D2_4BIT_BUS_SLOT_1
|
|
depends on ESP_HOSTED_SDIO_SLOT_1
|
|
int "D2 GPIO number"
|
|
default 20 if IDF_TARGET_ESP32S3
|
|
default 16 if IDF_TARGET_ESP32P4
|
|
default 12 if IDF_TARGET_ESP32
|
|
range ESP_HOSTED_SDIO_D2_GPIO_RANGE_MIN ESP_HOSTED_SDIO_D2_GPIO_RANGE_MAX
|
|
help
|
|
D2 GPIO pin for SDIO. Range enforced dynamically based on slave target to ensure IOMUX compliance.
|
|
|
|
config ESP_HOSTED_PRIV_SDIO_PIN_D3_4BIT_BUS_SLOT_0
|
|
depends on ESP_HOSTED_SDIO_SLOT_0
|
|
int "D3 GPIO number"
|
|
default 9 if IDF_TARGET_ESP32S3
|
|
range 42 42 if IDF_TARGET_ESP32P4
|
|
range 13 13 if IDF_TARGET_ESP32
|
|
help
|
|
"Value can only be configured for some targets. Displayed always for reference."
|
|
|
|
config ESP_HOSTED_PRIV_SDIO_PIN_D3_4BIT_BUS_SLOT_1
|
|
depends on ESP_HOSTED_SDIO_SLOT_1
|
|
int "D3 GPIO number"
|
|
default 9 if IDF_TARGET_ESP32S3
|
|
default 17 if IDF_TARGET_ESP32P4
|
|
default 13 if IDF_TARGET_ESP32
|
|
range ESP_HOSTED_SDIO_D3_GPIO_RANGE_MIN ESP_HOSTED_SDIO_D3_GPIO_RANGE_MAX
|
|
help
|
|
D3 GPIO pin for SDIO. Range enforced dynamically based on slave target to ensure IOMUX compliance.
|
|
endif
|
|
|
|
if !ESP_HOSTED_SDIO_4_BIT_BUS
|
|
config ESP_HOSTED_PRIV_SDIO_PIN_D1_1BIT_BUS_SLOT_0
|
|
depends on ESP_HOSTED_SDIO_SLOT_0
|
|
int "D1 GPIO number (Interrupt Line)"
|
|
default 35 if IDF_TARGET_ESP32S3
|
|
range 40 40 if IDF_TARGET_ESP32P4
|
|
range 4 4 if IDF_TARGET_ESP32
|
|
help
|
|
"Value can only be configured for some targets. Displayed always for reference."
|
|
config ESP_HOSTED_PRIV_SDIO_PIN_D1_1BIT_BUS_SLOT_1
|
|
depends on ESP_HOSTED_SDIO_SLOT_1
|
|
int "D1 GPIO number (Interrupt Line)"
|
|
default 35 if IDF_TARGET_ESP32S3
|
|
default 15 if IDF_TARGET_ESP32P4
|
|
default 4 if IDF_TARGET_ESP32
|
|
range ESP_HOSTED_SDIO_D1_GPIO_RANGE_MIN ESP_HOSTED_SDIO_D1_GPIO_RANGE_MAX
|
|
help
|
|
D1 GPIO pin for SDIO. Range enforced dynamically based on slave target to ensure IOMUX compliance.
|
|
endif
|
|
|
|
config ESP_HOSTED_SDIO_GPIO_RESET_SLAVE
|
|
int "GPIO pin for Reseting slave ESP"
|
|
default 54 if IDF_TARGET_ESP32P4
|
|
default 42 if IDF_TARGET_ESP32S3
|
|
default 5 if IDF_TARGET_ESP32
|
|
range ESP_HOSTED_SDIO_RESET_SLAVE_GPIO_MIN ESP_HOSTED_SDIO_RESET_SLAVE_GPIO_MAX
|
|
help
|
|
GPIO pin for Resetting ESP SDIO slave device. Should be connected to RST/EN of ESP SDIO slave device.
|
|
|
|
### *END* GPIO SDIO pin configurations for Slot 0 and 1
|
|
|
|
config ESP_HOSTED_SDIO_PIN_CMD
|
|
int
|
|
default ESP_HOSTED_PRIV_SDIO_PIN_CMD_SLOT_0 if ESP_HOSTED_SDIO_SLOT_0
|
|
default ESP_HOSTED_PRIV_SDIO_PIN_CMD_SLOT_1 if ESP_HOSTED_SDIO_SLOT_1
|
|
|
|
config ESP_HOSTED_SDIO_PIN_CLK
|
|
int
|
|
default ESP_HOSTED_PRIV_SDIO_PIN_CLK_SLOT_0 if ESP_HOSTED_SDIO_SLOT_0
|
|
default ESP_HOSTED_PRIV_SDIO_PIN_CLK_SLOT_1 if ESP_HOSTED_SDIO_SLOT_1
|
|
|
|
config ESP_HOSTED_SDIO_PIN_D0
|
|
int
|
|
default ESP_HOSTED_PRIV_SDIO_PIN_D0_SLOT_0 if ESP_HOSTED_SDIO_SLOT_0
|
|
default ESP_HOSTED_PRIV_SDIO_PIN_D0_SLOT_1 if ESP_HOSTED_SDIO_SLOT_1
|
|
|
|
if ESP_HOSTED_SDIO_4_BIT_BUS
|
|
config ESP_HOSTED_SDIO_PRIV_PIN_D1_4BIT_BUS
|
|
int
|
|
default ESP_HOSTED_PRIV_SDIO_PIN_D1_4BIT_BUS_SLOT_0 if ESP_HOSTED_SDIO_SLOT_0
|
|
default ESP_HOSTED_PRIV_SDIO_PIN_D1_4BIT_BUS_SLOT_1 if ESP_HOSTED_SDIO_SLOT_1
|
|
|
|
config ESP_HOSTED_SDIO_PIN_D2
|
|
int
|
|
default ESP_HOSTED_PRIV_SDIO_PIN_D2_4BIT_BUS_SLOT_0 if ESP_HOSTED_SDIO_SLOT_0
|
|
default ESP_HOSTED_PRIV_SDIO_PIN_D2_4BIT_BUS_SLOT_1 if ESP_HOSTED_SDIO_SLOT_1
|
|
|
|
config ESP_HOSTED_SDIO_PIN_D3
|
|
int
|
|
default ESP_HOSTED_PRIV_SDIO_PIN_D3_4BIT_BUS_SLOT_0 if ESP_HOSTED_SDIO_SLOT_0
|
|
default ESP_HOSTED_PRIV_SDIO_PIN_D3_4BIT_BUS_SLOT_1 if ESP_HOSTED_SDIO_SLOT_1
|
|
endif
|
|
|
|
if !ESP_HOSTED_SDIO_4_BIT_BUS
|
|
config ESP_HOSTED_SDIO_PRIV_PIN_D1_1BIT_BUS
|
|
int
|
|
default ESP_HOSTED_PRIV_SDIO_PIN_D1_1BIT_BUS_SLOT_0 if ESP_HOSTED_SDIO_SLOT_0
|
|
default ESP_HOSTED_PRIV_SDIO_PIN_D1_1BIT_BUS_SLOT_1 if ESP_HOSTED_SDIO_SLOT_1
|
|
endif
|
|
|
|
config ESP_HOSTED_SDIO_PIN_D1
|
|
int
|
|
default ESP_HOSTED_SDIO_PRIV_PIN_D1_4BIT_BUS if ESP_HOSTED_SDIO_4_BIT_BUS
|
|
default ESP_HOSTED_SDIO_PRIV_PIN_D1_1BIT_BUS if !ESP_HOSTED_SDIO_4_BIT_BUS
|
|
|
|
config ESP_HOSTED_SDIO_TX_Q_SIZE
|
|
int "Host SDIO Tx queue size"
|
|
default 20
|
|
help
|
|
Very small tx queue will lower data rate
|
|
|
|
config ESP_HOSTED_SDIO_RX_Q_SIZE
|
|
int "Host SDIO Rx queue size"
|
|
default 20
|
|
help
|
|
Very small RX queue will lower data rate
|
|
|
|
config ESP_HOSTED_SDIO_RESET_DELAY_MS
|
|
int "Delay (in ms) after Co-processor Reset"
|
|
default 1500
|
|
help
|
|
The co-processor needs some time to be ready after being reset by the host.
|
|
Increase this value if host sees SDMMC errors after resetting the co-processor.
|
|
|
|
config ESP_HOSTED_SDIO_CHECKSUM
|
|
bool "SDIO checksum ENABLE/DISABLE"
|
|
help
|
|
ENABLE/DISABLE software SDIO checksum
|
|
endmenu
|
|
|
|
menu "SPI Half-duplex Configuration"
|
|
depends on ESP_HOSTED_SPI_HD_HOST_INTERFACE
|
|
|
|
config ESP_HOSTED_SPI_HD_MODE
|
|
int "SPI Mode to use"
|
|
default 3
|
|
range 0 3
|
|
help
|
|
SPI Mode to use. The same mode must be used on both host and slave.
|
|
|
|
choice ESP_HOSTED_SPI_HD_PRIV_INTERFACE_NUM_DATA_LINES
|
|
bool "Num Data Lines to use"
|
|
default ESP_HOSTED_SPI_HD_PRIV_INTERFACE_4_DATA_LINES
|
|
help
|
|
Number of Data Lines to use in the SPI HD interface
|
|
|
|
config ESP_HOSTED_SPI_HD_PRIV_INTERFACE_4_DATA_LINES
|
|
bool "4 data lines"
|
|
|
|
config ESP_HOSTED_SPI_HD_PRIV_INTERFACE_2_DATA_LINES
|
|
bool "2 data lines"
|
|
endchoice
|
|
|
|
config ESP_HOSTED_SPI_HD_INTERFACE_NUM_DATA_LINES
|
|
int
|
|
default 4 if ESP_HOSTED_SPI_HD_PRIV_INTERFACE_4_DATA_LINES
|
|
default 2 if ESP_HOSTED_SPI_HD_PRIV_INTERFACE_2_DATA_LINES
|
|
|
|
choice ESP_HOSTED_SPI_HD_RESET_GPIO_CONFIG
|
|
bool "RESET GPIO Config"
|
|
default ESP_HOSTED_SPI_HD_RESET_ACTIVE_HIGH
|
|
help
|
|
"If Active High, High->Low->High will trigger reset (Low will trigger reset)
|
|
If Active Low, Low->High->Low will trigger reset (High will trigger reset)"
|
|
|
|
config ESP_HOSTED_SPI_HD_RESET_ACTIVE_HIGH
|
|
bool "RESET: Active High"
|
|
config ESP_HOSTED_SPI_HD_RESET_ACTIVE_LOW
|
|
bool "RESET: Active Low"
|
|
endchoice
|
|
|
|
choice ESP_HOSTED_SPI_HD_DATAREADY_GPIO_CONFIG
|
|
bool "DataReady GPIO Config"
|
|
default ESP_HOSTED_SPI_HD_DR_ACTIVE_HIGH
|
|
|
|
config ESP_HOSTED_SPI_HD_DR_ACTIVE_HIGH
|
|
bool "DR: Active High"
|
|
config ESP_HOSTED_SPI_HD_DR_ACTIVE_LOW
|
|
bool "DR: Active Low"
|
|
endchoice
|
|
|
|
menu "Host GPIOs Config"
|
|
config ESP_HOSTED_SPI_HD_CS_RANGE_MIN
|
|
int
|
|
default 19 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 4 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 4 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default -1
|
|
|
|
config ESP_HOSTED_SPI_HD_CS_RANGE_MAX
|
|
int
|
|
default 19 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 4 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 4 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default 100
|
|
|
|
config ESP_HOSTED_SPI_HD_GPIO_CS
|
|
int "GPIO pin for Host CS"
|
|
default 7 if IDF_TARGET_ESP32P4
|
|
default 10 if IDF_TARGET_ESP32S3
|
|
default 1 if IDF_TARGET_ESP32H2
|
|
default -1 if !IDF_TARGET_ESP32P4 || !IDF_TARGET_ESP32H2 || !IDF_TARGET_ESP32S3
|
|
range ESP_HOSTED_SPI_HD_CS_RANGE_MIN ESP_HOSTED_SPI_HD_CS_RANGE_MAX
|
|
help
|
|
SPI Half-duplex controller Host CS
|
|
|
|
config ESP_HOSTED_SPI_HD_CLK_RANGE_MIN
|
|
int
|
|
default 18 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 33 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 33 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default -1
|
|
|
|
config ESP_HOSTED_SPI_HD_CLK_RANGE_MAX
|
|
int
|
|
default 18 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 33 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 33 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default 100
|
|
|
|
config ESP_HOSTED_SPI_HD_GPIO_CLK
|
|
int "GPIO pin for Host CLK"
|
|
default 9 if IDF_TARGET_ESP32P4
|
|
default 12 if IDF_TARGET_ESP32S3
|
|
default 4 if IDF_TARGET_ESP32H2
|
|
default -1 if !IDF_TARGET_ESP32P4 || !IDF_TARGET_ESP32H2 || !IDF_TARGET_ESP32S3
|
|
range ESP_HOSTED_SPI_HD_CLK_RANGE_MIN ESP_HOSTED_SPI_HD_CLK_RANGE_MAX
|
|
help
|
|
SPI Half-duplex controller Host CLK
|
|
|
|
config ESP_HOSTED_SPI_HD_D0_RANGE_MIN
|
|
int
|
|
default 14 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 23 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 23 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default -1
|
|
|
|
config ESP_HOSTED_SPI_HD_D0_RANGE_MAX
|
|
int
|
|
default 14 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 23 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 23 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default 100
|
|
|
|
config ESP_HOSTED_SPI_HD_GPIO_D0
|
|
int "GPIO pin for Host D0"
|
|
default 8 if IDF_TARGET_ESP32P4
|
|
default 11 if IDF_TARGET_ESP32S3
|
|
default 5 if IDF_TARGET_ESP32H2
|
|
default -1 if !IDF_TARGET_ESP32P4 || !IDF_TARGET_ESP32H2 || !IDF_TARGET_ESP32S3
|
|
range ESP_HOSTED_SPI_HD_D0_RANGE_MIN ESP_HOSTED_SPI_HD_D0_RANGE_MAX
|
|
help
|
|
SPI Half-duplex controller Host D0
|
|
|
|
config ESP_HOSTED_SPI_HD_D1_RANGE_MIN
|
|
int
|
|
default 15 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 22 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 22 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default -1
|
|
|
|
config ESP_HOSTED_SPI_HD_D1_RANGE_MAX
|
|
int
|
|
default 15 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 22 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 22 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default 100
|
|
|
|
config ESP_HOSTED_SPI_HD_GPIO_D1
|
|
int "GPIO pin for Host D1"
|
|
default 10 if IDF_TARGET_ESP32P4
|
|
default 13 if IDF_TARGET_ESP32S3
|
|
default 0 if IDF_TARGET_ESP32H2
|
|
default -1 if !IDF_TARGET_ESP32P4 || !IDF_TARGET_ESP32H2 || !IDF_TARGET_ESP32S3
|
|
range ESP_HOSTED_SPI_HD_D1_RANGE_MIN ESP_HOSTED_SPI_HD_D1_RANGE_MAX
|
|
help
|
|
SPI Half-duplex controller Host D1
|
|
|
|
config ESP_HOSTED_SPI_HD_D2_RANGE_MIN
|
|
int
|
|
default 16 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 20 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 20 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default -1
|
|
|
|
config ESP_HOSTED_SPI_HD_D2_RANGE_MAX
|
|
int
|
|
default 16 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 20 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 20 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default 100
|
|
|
|
config ESP_HOSTED_SPI_HD_GPIO_D2
|
|
depends on ESP_HOSTED_SPI_HD_PRIV_INTERFACE_4_DATA_LINES
|
|
int "GPIO pin for Host D2"
|
|
default 11 if IDF_TARGET_ESP32P4
|
|
default 14 if IDF_TARGET_ESP32S3
|
|
default 2 if IDF_TARGET_ESP32H2
|
|
default -1 if !IDF_TARGET_ESP32P4 || !IDF_TARGET_ESP32H2 || !IDF_TARGET_ESP32S3
|
|
range ESP_HOSTED_SPI_HD_D2_RANGE_MIN ESP_HOSTED_SPI_HD_D2_RANGE_MAX
|
|
help
|
|
SPI Half-duplex controller Host D2
|
|
|
|
config ESP_HOSTED_SPI_HD_D3_RANGE_MIN
|
|
int
|
|
default 17 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 21 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 21 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default -1
|
|
|
|
config ESP_HOSTED_SPI_HD_D3_RANGE_MAX
|
|
int
|
|
default 17 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 21 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 21 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default 100
|
|
|
|
config ESP_HOSTED_SPI_HD_GPIO_D3
|
|
depends on ESP_HOSTED_SPI_HD_PRIV_INTERFACE_4_DATA_LINES
|
|
int "GPIO pin for Host D3"
|
|
default 6 if IDF_TARGET_ESP32P4
|
|
default 9 if IDF_TARGET_ESP32S3
|
|
default 3 if IDF_TARGET_ESP32H2
|
|
default -1 if !IDF_TARGET_ESP32P4 || !IDF_TARGET_ESP32H2 || !IDF_TARGET_ESP32S3
|
|
range ESP_HOSTED_SPI_HD_D3_RANGE_MIN ESP_HOSTED_SPI_HD_D3_RANGE_MAX
|
|
help
|
|
SPI Half-duplex controller Host D3
|
|
|
|
config ESP_HOSTED_SPI_HD_DATA_READY_RANGE_MIN
|
|
int
|
|
default 6 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 32 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 32 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default -1
|
|
|
|
config ESP_HOSTED_SPI_HD_DATA_READY_RANGE_MAX
|
|
int
|
|
default 6 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 32 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 32 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default 100
|
|
|
|
config ESP_HOSTED_SPI_HD_GPIO_DATA_READY
|
|
int "GPIO pin for data ready interrupt"
|
|
default 13 if IDF_TARGET_ESP32P4
|
|
default 4 if IDF_TARGET_ESP32S3
|
|
default 12 if IDF_TARGET_ESP32H2
|
|
default -1 if !IDF_TARGET_ESP32P4 || !IDF_TARGET_ESP32H2 || !IDF_TARGET_ESP32S3
|
|
range ESP_HOSTED_SPI_HD_DATA_READY_RANGE_MIN ESP_HOSTED_SPI_HD_DATA_READY_RANGE_MAX
|
|
help
|
|
GPIO pin for indicating host that slave has data to be read by host
|
|
|
|
config ESP_HOSTED_SPI_HD_RESET_RANGE_MIN
|
|
int
|
|
default 54 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 53 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 53 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default -1
|
|
|
|
config ESP_HOSTED_SPI_HD_RESET_RANGE_MAX
|
|
int
|
|
default 54 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 53 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C5
|
|
default 53 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C2
|
|
default 100
|
|
|
|
config ESP_HOSTED_SPI_HD_GPIO_RESET_SLAVE
|
|
int "GPIO pin for Reseting slave ESP"
|
|
default 12 if IDF_TARGET_ESP32P4
|
|
default 5 if IDF_TARGET_ESP32S3
|
|
default 10 if IDF_TARGET_ESP32H2
|
|
default -1 if !IDF_TARGET_ESP32P4 || !IDF_TARGET_ESP32H2 || !IDF_TARGET_ESP32S3
|
|
range ESP_HOSTED_SPI_HD_RESET_RANGE_MIN ESP_HOSTED_SPI_HD_RESET_RANGE_MAX
|
|
help
|
|
GPIO pin for Resetting ESP slave device. Should be connected to RST/EN of ESP SPI slave device.
|
|
endmenu
|
|
|
|
ESP32XX_SPI_HD_CLK_FREQ_RANGE_MIN := 1
|
|
ESP32_SPI_HD_CLK_FREQ_RANGE_MAX := 10
|
|
ESP32C6_SPI_HD_CLK_FREQ_RANGE_MAX := 40
|
|
ESP32XX_SPI_HD_CLK_FREQ_RANGE_MAX := 40
|
|
|
|
config ESP_HOSTED_SPI_HD_FREQ_ESP32C6
|
|
depends on SLAVE_IDF_TARGET_ESP32C6
|
|
int "SPI HD Clock Freq (MHz)"
|
|
default 40 if IDF_TARGET_ESP32P4 #config for ESP32-P4 Function_EV_Board
|
|
default 10
|
|
range $(ESP32XX_SPI_HD_CLK_FREQ_RANGE_MIN) $(ESP32C6_SPI_HD_CLK_FREQ_RANGE_MAX)
|
|
help
|
|
"Optimize CLK by increasing till host practically can support"
|
|
|
|
config ESP_HOSTED_SPI_HD_FREQ_ESP32XX
|
|
depends on SLAVE_IDF_TARGET_ESP32C2 || SLAVE_IDF_TARGET_ESP32C3 || SLAVE_IDF_TARGET_ESP32S2 || SLAVE_IDF_TARGET_ESP32S3 || SLAVE_IDF_TARGET_ESP32C5 || SLAVE_IDF_TARGET_ESP32C61
|
|
int "SPI HD Clock Freq (MHz)"
|
|
default 40 if SLAVE_IDF_TARGET_ESP32C2 || SLAVE_IDF_TARGET_ESP32C3 || SLAVE_IDF_TARGET_ESP32S2 || SLAVE_IDF_TARGET_ESP32S3 || SLAVE_IDF_TARGET_ESP32C5 || SLAVE_IDF_TARGET_ESP32C61
|
|
range $(ESP32XX_SPI_HD_CLK_FREQ_RANGE_MIN) $(ESP32XX_SPI_HD_CLK_FREQ_RANGE_MAX)
|
|
help
|
|
"Optimize CLK by increasing till host practically can support"
|
|
|
|
config ESP_HOSTED_SPI_HD_CLK_FREQ
|
|
int
|
|
default ESP_HOSTED_SPI_HD_FREQ_ESP32C6 if SLAVE_IDF_TARGET_ESP32C6
|
|
default ESP_HOSTED_SPI_HD_FREQ_ESP32XX if SLAVE_IDF_TARGET_ESP32C2 || SLAVE_IDF_TARGET_ESP32C3 || SLAVE_IDF_TARGET_ESP32S2 || SLAVE_IDF_TARGET_ESP32S3 || SLAVE_IDF_TARGET_ESP32C5 || SLAVE_IDF_TARGET_ESP32C61
|
|
help
|
|
"Optimize CLK by increasing till host practically can support"
|
|
|
|
config ESP_HOSTED_SPI_HD_TX_Q_SIZE
|
|
int "ESP to Host queue size"
|
|
default 20
|
|
help
|
|
Very small tx queue will lower ESP -- SPI Half-duplex --> Host data rate
|
|
|
|
config ESP_HOSTED_SPI_HD_RX_Q_SIZE
|
|
int "Host to ESP queue size"
|
|
default 20
|
|
help
|
|
Very small RX queue will lower ESP <-- SPI Half-duplex -- Host data rate
|
|
|
|
config ESP_HOSTED_SPI_HD_CHECKSUM
|
|
bool "Checksum ENABLE/DISABLE"
|
|
default y
|
|
help
|
|
ENABLE/DISABLE software checksum
|
|
endmenu
|
|
|
|
menu "UART Configuration"
|
|
depends on ESP_HOSTED_UART_HOST_INTERFACE
|
|
|
|
choice ESP_HOSTED_UART_RESET_GPIO_CONFIG
|
|
bool "RESET GPIO Config"
|
|
default ESP_HOSTED_UART_RESET_ACTIVE_HIGH
|
|
help
|
|
"If Active High, High->Low->High will trigger reset (Low will trigger reset)
|
|
If Active Low, Low->High->Low will trigger reset (High will trigger reset)"
|
|
|
|
config ESP_HOSTED_UART_RESET_ACTIVE_HIGH
|
|
bool "RESET: Active High"
|
|
config ESP_HOSTED_UART_RESET_ACTIVE_LOW
|
|
bool "RESET: Active Low"
|
|
endchoice
|
|
|
|
config ESP_HOSTED_UART_PORT
|
|
int "UART Port to Use"
|
|
default 1
|
|
range 0 2 if IDF_TARGET_ESP32
|
|
range 0 1 if IDF_TARGET_ESP32C2 || IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C5 || IDF_TARGET_ESP32C6
|
|
range 0 2 if IDF_TARGET_ESP32C61
|
|
range 0 1 if IDF_TARGET_ESP32S2
|
|
range 0 2 if IDF_TARGET_ESP32S3
|
|
range 0 4 if IDF_TARGET_ESP32P4
|
|
help
|
|
Select UART Port to Use. Do not select the UART Port used for console output (if enabled)
|
|
|
|
config ESP_HOSTED_UART_TX_RANGE_MIN
|
|
int
|
|
default 14 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 0
|
|
|
|
config ESP_HOSTED_UART_TX_RANGE_MAX
|
|
int
|
|
default 14 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 100
|
|
|
|
config ESP_HOSTED_UART_PIN_TX
|
|
int "TX GPIO number"
|
|
default 13 if IDF_TARGET_ESP32
|
|
default 5 if IDF_TARGET_ESP32C2 || IDF_TARGET_ESP32C3
|
|
default 14 if IDF_TARGET_ESP32C5
|
|
default 21 if IDF_TARGET_ESP32C6
|
|
default 5 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3
|
|
default 14 if IDF_TARGET_ESP32P4
|
|
default 12 if IDF_TARGET_ESP32H2
|
|
range ESP_HOSTED_UART_TX_RANGE_MIN ESP_HOSTED_UART_TX_RANGE_MAX
|
|
help
|
|
GPIO used for UART TX
|
|
|
|
config ESP_HOSTED_UART_RX_RANGE_MIN
|
|
int
|
|
default 15 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 0
|
|
|
|
config ESP_HOSTED_UART_RX_RANGE_MAX
|
|
int
|
|
default 15 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && SLAVE_IDF_TARGET_ESP32C6
|
|
default 100
|
|
|
|
config ESP_HOSTED_UART_PIN_RX
|
|
int "RX GPIO number"
|
|
default 12 if IDF_TARGET_ESP32
|
|
default 4 if IDF_TARGET_ESP32C2 || IDF_TARGET_ESP32C3
|
|
default 13 if IDF_TARGET_ESP32C5
|
|
default 20 if IDF_TARGET_ESP32C6
|
|
default 4 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3
|
|
default 15 if IDF_TARGET_ESP32P4
|
|
default 22 if IDF_TARGET_ESP32H2
|
|
range ESP_HOSTED_UART_RX_RANGE_MIN ESP_HOSTED_UART_RX_RANGE_MAX
|
|
help
|
|
GPIO used for UART RX
|
|
|
|
config ESP_HOSTED_UART_BAUDRATE
|
|
int "Baud Rate"
|
|
default 921600
|
|
range 9600 3500000
|
|
help
|
|
Baud Rate to Use. Make sure Hardware supports the rate. Standard rates are 9600, 19200, 38400, 57600, 115200, 460800, 921600
|
|
|
|
config ESP_HOSTED_UART_NUM_DATA_BITS
|
|
int "Number of Data Bits"
|
|
default 8
|
|
range 5 8
|
|
help
|
|
Number of Data Bits to use
|
|
|
|
choice ESP_HOSTED_UART_PRIV_PARITY
|
|
bool "Parity"
|
|
|
|
config ESP_HOSTED_UART_PRIV_PARITY_NONE
|
|
bool "None"
|
|
|
|
config ESP_HOSTED_UART_PRIV_PARITY_EVEN
|
|
bool "Even"
|
|
|
|
config ESP_HOSTED_UART_PRIV_PARITY_ODD
|
|
bool "Odd"
|
|
endchoice
|
|
|
|
config ESP_HOSTED_UART_PARITY
|
|
int
|
|
default 0 if ESP_HOSTED_UART_PRIV_PARITY_NONE
|
|
default 1 if ESP_HOSTED_UART_PRIV_PARITY_EVEN
|
|
default 2 if ESP_HOSTED_UART_PRIV_PARITY_ODD
|
|
|
|
choice ESP_HOSTED_UART_PRIV_STOP_BITS
|
|
bool "Number of Stop Bits"
|
|
|
|
config ESP_HOSTED_UART_PRIV_STOP_BITS_1
|
|
bool "1"
|
|
|
|
config ESP_HOSTED_UART_PRIV_STOP_BITS_1_5
|
|
bool "1.5"
|
|
|
|
config ESP_HOSTED_UART_PRIV_STOP_BITS_2
|
|
bool "2"
|
|
endchoice
|
|
|
|
config ESP_HOSTED_UART_STOP_BITS
|
|
int
|
|
default 0 if ESP_HOSTED_UART_PRIV_STOP_BITS_1
|
|
default 1 if ESP_HOSTED_UART_PRIV_STOP_BITS_1_5
|
|
default 2 if ESP_HOSTED_UART_PRIV_STOP_BITS_2
|
|
|
|
config ESP_HOSTED_UART_GPIO_RESET_SLAVE
|
|
int "GPIO pin for Reseting slave ESP"
|
|
default 54 if IDF_TARGET_ESP32P4
|
|
default 42 if IDF_TARGET_ESP32S3
|
|
default 5
|
|
help
|
|
GPIO pin for Resetting ESP SDIO slave device. Should be connected to RST/EN of ESP SDIO slave device.
|
|
|
|
config ESP_HOSTED_UART_TX_Q_SIZE
|
|
int "Tx Queue Size"
|
|
default 5
|
|
help
|
|
UART rates are low, so large queue sizes are not required
|
|
|
|
config ESP_HOSTED_UART_RX_Q_SIZE
|
|
int "Rx Queue Size"
|
|
default 5
|
|
help
|
|
UART rates are low, so large queue sizes are not required
|
|
|
|
config ESP_HOSTED_UART_CHECKSUM
|
|
bool "UART checksum ENABLE/DISABLE"
|
|
default y
|
|
help
|
|
ENABLE/DISABLE software UART checksum
|
|
endmenu
|
|
|
|
menu "Common Slave Reset Strategy"
|
|
choice ESP_HOSTED_SLAVE_RESET_STRATEGY
|
|
bool "When to reset the slave device"
|
|
default ESP_HOSTED_SLAVE_RESET_ON_EVERY_HOST_BOOTUP
|
|
help
|
|
Select Select when to reset the slave
|
|
|
|
config ESP_HOSTED_SLAVE_RESET_ON_EVERY_HOST_BOOTUP
|
|
bool "Reset slave on every host bootup"
|
|
help
|
|
Reset the slave device every time the host boots up. This ensures a clean
|
|
transport state and prevents any inconsistent states, but causes
|
|
the slave to reboot every time.
|
|
|
|
config ESP_HOSTED_SLAVE_RESET_ONLY_IF_NECESSARY
|
|
bool "Reset slave only if necessary"
|
|
depends on ESP_HOSTED_SDIO_HOST_INTERFACE
|
|
help
|
|
Only reset the slave if initialization fails. This reduces slave
|
|
reboots but assumes the slave interface is in a consistent state.
|
|
If initialization fails, the host will assume the slave is in an
|
|
inconsistent or deinitialized state and will reset it.
|
|
Note: This option is only available for SDIO transport.
|
|
endchoice
|
|
|
|
config ESP_HOSTED_HOST_RESTART_NO_COMMUNICATION_WITH_SLAVE
|
|
bool "Enable host auto-restart on communication failure"
|
|
depends on ESP_HOSTED_SLAVE_RESET_ONLY_IF_NECESSARY
|
|
default y
|
|
help
|
|
Enable host to automatically restart if it fails to establish communication with the slave.
|
|
When enabled, the host will reset itself to recover the connection if the slave
|
|
becomes non-responsive for the configured timeout period. This acts as a safeguard
|
|
in case the slave does not issue the first event on the transport line.
|
|
|
|
config ESP_HOSTED_HOST_RESTART_NO_COMMUNICATION_WITH_SLAVE_TIMEOUT
|
|
depends on ESP_HOSTED_HOST_RESTART_NO_COMMUNICATION_WITH_SLAVE
|
|
int "Communication failure timeout (seconds)"
|
|
default 5
|
|
help
|
|
Maximum time in seconds that the host will wait for a response from the slave
|
|
before triggering an automatic restart. If no communication is established within
|
|
this period, the host will reset itself to recover the connection.
|
|
endmenu
|
|
|
|
config ESP_HOSTED_GPIO_SLAVE_RESET_SLAVE
|
|
int
|
|
default ESP_HOSTED_SPI_GPIO_RESET_SLAVE if ESP_HOSTED_SPI_HOST_INTERFACE
|
|
default ESP_HOSTED_SDIO_GPIO_RESET_SLAVE if ESP_HOSTED_SDIO_HOST_INTERFACE
|
|
default ESP_HOSTED_SPI_HD_GPIO_RESET_SLAVE if ESP_HOSTED_SPI_HD_HOST_INTERFACE
|
|
default ESP_HOSTED_UART_GPIO_RESET_SLAVE if ESP_HOSTED_UART_HOST_INTERFACE
|
|
|
|
config ESP_HOSTED_RESET_GPIO_ACTIVE_LOW
|
|
bool
|
|
default n if ESP_HOSTED_SDIO_RESET_ACTIVE_HIGH || ESP_HOSTED_SPI_RESET_ACTIVE_HIGH || ESP_HOSTED_SPI_HD_RESET_ACTIVE_HIGH || ESP_HOSTED_UART_RESET_ACTIVE_HIGH
|
|
default y if ESP_HOSTED_SDIO_RESET_ACTIVE_LOW || ESP_HOSTED_SPI_RESET_ACTIVE_LOW || ESP_HOSTED_SPI_HD_RESET_ACTIVE_LOW || ESP_HOSTED_UART_RESET_ACTIVE_LOW
|
|
|
|
menu "Bluetooth Support"
|
|
|
|
comment "Following options must be set before this option can be enabled"
|
|
depends on !BT_ENABLED || BT_CONTROLLER_ONLY || (BT_NIMBLE_ENABLED && (BT_NIMBLE_TRANSPORT_UART || BT_CONTROLLER_ENABLED)) || (BT_BLUEDROID_ENABLED && BT_CONTROLLER_ENABLED)
|
|
|
|
comment "'Component config->Bluetooth' must be enabled"
|
|
depends on !BT_ENABLED
|
|
|
|
comment "'Component config->Bluetooth->Host' must be enabled"
|
|
depends on BT_ENABLED && BT_CONTROLLER_ONLY
|
|
|
|
comment "'Component config->Bluetooth->Controller' must be disabled"
|
|
depends on BT_ENABLED && BT_CONTROLLER_ENABLED
|
|
|
|
comment "'Component config->Bluetooth->NimBLE Options->Host-controller Transport->Uart Transport' must be disabled"
|
|
depends on BT_NIMBLE_ENABLED && BT_NIMBLE_TRANSPORT_UART
|
|
|
|
if BT_ENABLED && BT_BLUEDROID_ENABLED && !BT_CONTROLLER_ENABLED
|
|
config ESP_HOSTED_ENABLE_BT_BLUEDROID
|
|
bool "Enable Hosted Bluedroid Bluetooth support"
|
|
default n
|
|
help
|
|
Enable Bluetooth Support for Bluedroid via Hosted
|
|
|
|
choice ESP_HOSTED_BLUEDROID_HCI_TYPE
|
|
bool "BT Bluedroid HCI Type"
|
|
default ESP_HOSTED_BLUEDROID_HCI_VHCI
|
|
depends on ESP_HOSTED_ENABLE_BT_BLUEDROID
|
|
help
|
|
Selects the HCI to use
|
|
|
|
config ESP_HOSTED_BLUEDROID_HCI_VHCI
|
|
bool "VHCI"
|
|
help
|
|
Bluetooth data is sent through the selected transport layer
|
|
endchoice
|
|
endif
|
|
|
|
if BT_ENABLED && BT_NIMBLE_ENABLED && !BT_CONTROLLER_ENABLED && !BT_NIMBLE_TRANSPORT_UART
|
|
config ESP_HOSTED_ENABLE_BT_NIMBLE
|
|
bool "Enable Hosted Nimble Bluetooth support"
|
|
default n
|
|
help
|
|
Enable Bluetooth Support via Hosted
|
|
|
|
choice ESP_HOSTED_NIMBLE_HCI_TYPE
|
|
bool "BT Nimble HCI Type"
|
|
default ESP_HOSTED_NIMBLE_HCI_VHCI
|
|
depends on ESP_HOSTED_ENABLE_BT_NIMBLE
|
|
help
|
|
Selects the HCI to use
|
|
|
|
config ESP_HOSTED_NIMBLE_HCI_VHCI
|
|
bool "VHCI"
|
|
help
|
|
Bluetooth data is sent through the selected transport layer
|
|
endchoice
|
|
endif
|
|
endmenu
|
|
|
|
menu "Task defaults"
|
|
config ESP_HOSTED_RPC_TASK_STACK
|
|
int "RPC task stack size"
|
|
default 4096
|
|
|
|
config ESP_HOSTED_DFLT_TASK_STACK
|
|
int "Hosted default task size"
|
|
default 3072
|
|
endmenu
|
|
|
|
config ESP_HOSTED_ENABLE_ITWT
|
|
bool "Enable iTWT support"
|
|
depends on SLAVE_SOC_WIFI_HE_SUPPORT
|
|
default y
|
|
help
|
|
Enable Wi-Fi iTWT (individual Target Wake Time) APIs on Host. Using the API, Host
|
|
can instruct the co-processor to negotiate specific wake and sleep schedules with
|
|
the access point (AP) for lower power consumption.
|
|
|
|
config ESP_HOSTED_ENABLE_DPP
|
|
bool "Enable Wi-Fi Easy Connect (DPP)"
|
|
default n
|
|
help
|
|
Enable Wi-Fi Easy Connect (DPP) support
|
|
|
|
config ESP_HOSTED_DPP_URI_LEN_MAX
|
|
int "Maximum length of URI used to generate QR code in Wi-Fi Easy Connect"
|
|
depends on ESP_HOSTED_ENABLE_DPP
|
|
default 255
|
|
help
|
|
URIs used to generate the QR code should be less than this length.
|
|
Increase this value if the received URI can be larger
|
|
|
|
config ESP_HOSTED_USE_MEMPOOL
|
|
bool "Cache allocated memory like mempool - helps to reduce malloc calls"
|
|
default y
|
|
help
|
|
Cache allocated memory - reduces number of malloc calls
|
|
|
|
config ESP_HOSTED_MAX_SIMULTANEOUS_SYNC_RPC_REQUESTS
|
|
int "Maximum number of simultaneous synchronous RPC Request"
|
|
default 5
|
|
help
|
|
Sets the maximum number of simultaneous synchronous RPC Requests.
|
|
(Synchronous RPC Request: each sending task waits for the response.)
|
|
Usually, the host application may send up to 3 simultaneous RPC requests to the slave.
|
|
Increase this number if you need to send more simultaneous RPC requests.
|
|
Note: the slave will only process one RPC request (sync and async) at a time
|
|
|
|
config ESP_HOSTED_MAX_SIMULTANEOUS_ASYNC_RPC_REQUESTS
|
|
int "Maximum number of simultaneous asynchronous RPC Request"
|
|
default 5
|
|
help
|
|
Sets the maximum number of simultaneous asynchronous RPC Requests.
|
|
(Asynchronous RPC Request: each sending task registers a callback to get the response.)
|
|
Usually, the host application may send up to 3 simultaneous RPC requests to the slave.
|
|
Increase this number if you need to send more simultaneous RPC requests.
|
|
Note: the slave will only process one RPC request (sync and async) at a time
|
|
|
|
config ESP_HOSTED_CLI_ENABLED
|
|
bool "Enable CLI Shell"
|
|
default y
|
|
help
|
|
Only registers ESP-Hosted cli commands to the existing CLI session opened earlier by other components than esp-hosted
|
|
|
|
config ESP_HOSTED_CLI_NEW_INSTANCE
|
|
depends on ESP_HOSTED_CLI_ENABLED
|
|
bool "Create new instance & do not re-use existing session if any"
|
|
default n
|
|
help
|
|
Starts a new CLI instance when enabled & registers esp hosted as well.
|
|
Refrain from enabling this option, if your example already creates cli session, for example, iperf example.
|
|
|
|
menu "Debug Settings"
|
|
|
|
config ESP_HOSTED_RAW_THROUGHPUT_TRANSPORT
|
|
bool "RawTP: Transport level throughput debug test"
|
|
default n
|
|
help
|
|
Find max transport performance which helps to assess stability of porting done
|
|
|
|
choice ESP_HOSTED_RAW_THROUGHPUT_DIRECTION
|
|
bool "RawTP: Send data from:"
|
|
depends on ESP_HOSTED_RAW_THROUGHPUT_TRANSPORT
|
|
|
|
config ESP_HOSTED_RAW_THROUGHPUT_TX_TO_SLAVE
|
|
bool "Host to Slave"
|
|
help
|
|
Sends data from Host to Slave
|
|
|
|
config ESP_HOSTED_RAW_THROUGHPUT_RX_FROM_SLAVE
|
|
bool "Slave to Host"
|
|
help
|
|
Sends data from Slave to Slave
|
|
|
|
config ESP_HOSTED_RAW_THROUGHPUT_BIDIRECTIONAL
|
|
bool "Bidirectional"
|
|
help
|
|
Sends data in both directions
|
|
endchoice
|
|
|
|
config ESP_HOSTED_RAW_TP_HOST_TO_ESP_PKT_LEN
|
|
depends on ESP_HOSTED_RAW_THROUGHPUT_TRANSPORT
|
|
int "RawTP: Host to ESP packet size"
|
|
range 1 1500
|
|
default 1460
|
|
|
|
config ESP_HOSTED_RAW_TP_REPORT_INTERVAL
|
|
depends on ESP_HOSTED_RAW_THROUGHPUT_TRANSPORT
|
|
int "RawTP: periodic duration to report stats accumulated"
|
|
default 5
|
|
|
|
config ESP_HOSTED_PKT_STATS
|
|
bool "Transport level packet stats"
|
|
default n
|
|
help
|
|
On comparing with slave packet stats helps to understand any packet loss at hosted
|
|
|
|
config ESP_PKT_STATS_INTERVAL_SEC
|
|
depends on ESP_PKT_STATS
|
|
int "Packet stats reporting interval (sec)"
|
|
default 30
|
|
|
|
endmenu
|
|
|
|
menu "Data path options"
|
|
config ESP_HOSTED_HOST_TO_ESP_WIFI_DATA_THROTTLE
|
|
bool "Report WiFi queue utilization to host"
|
|
default y
|
|
help
|
|
Proactively drop Host->slave Wi-Fi data when Slave Wi-Fi is under load
|
|
Slave Wi-Fi may drop ingress bursty or higher than capacity packets.
|
|
To have synchronous way of packet dropped for application,
|
|
Host will throttle incoming data if the slave datapath Rx load is high
|
|
|
|
config ESP_HOSTED_PRIV_WIFI_TX_SPI_HIGH_THRESHOLD
|
|
depends on ESP_HOSTED_HOST_TO_ESP_WIFI_DATA_THROTTLE && ESP_HOSTED_SPI_HOST_INTERFACE
|
|
int "High threshold to report host to drop data when wifi highly loaded"
|
|
range 0 100
|
|
default 90
|
|
help
|
|
Host will throttle incoming data if the slave datapath Rx load goes beyond this threshold
|
|
0 value will disable this function
|
|
|
|
config ESP_HOSTED_PRIV_WIFI_TX_SDIO_HIGH_THRESHOLD
|
|
depends on ESP_HOSTED_HOST_TO_ESP_WIFI_DATA_THROTTLE && ESP_HOSTED_SDIO_HOST_INTERFACE
|
|
int "High threshold to report host to drop data when wifi highly loaded"
|
|
range 0 100
|
|
default 80
|
|
help
|
|
Host will throttle incoming data if the slave datapath Rx load goes beyond this threshold
|
|
0 value will disable this function
|
|
|
|
config ESP_HOSTED_PRIV_WIFI_TX_SPI_HD_HIGH_THRESHOLD
|
|
depends on ESP_HOSTED_HOST_TO_ESP_WIFI_DATA_THROTTLE && ESP_HOSTED_SPI_HD_HOST_INTERFACE
|
|
int "High threshold to report host to drop data when wifi highly loaded"
|
|
range 0 100
|
|
default 80
|
|
help
|
|
Host will throttle incoming data if the slave datapath Rx load goes beyond this threshold
|
|
0 value will disable this function
|
|
|
|
config ESP_HOSTED_PRIV_WIFI_TX_UART_HIGH_THRESHOLD
|
|
depends on ESP_HOSTED_HOST_TO_ESP_WIFI_DATA_THROTTLE && ESP_HOSTED_UART_HOST_INTERFACE
|
|
int "High threshold to report host to drop data when wifi highly loaded"
|
|
range 0 100
|
|
default 80
|
|
help
|
|
Host will throttle incoming data if the slave datapath Rx load goes beyond this threshold
|
|
0 value will disable this function
|
|
|
|
config ESP_HOSTED_TO_WIFI_DATA_THROTTLE_HIGH_THRESHOLD
|
|
depends on ESP_HOSTED_HOST_TO_ESP_WIFI_DATA_THROTTLE
|
|
int
|
|
default ESP_HOSTED_PRIV_WIFI_TX_SPI_HIGH_THRESHOLD if ESP_HOSTED_SPI_HOST_INTERFACE
|
|
default ESP_HOSTED_PRIV_WIFI_TX_SDIO_HIGH_THRESHOLD if ESP_HOSTED_SDIO_HOST_INTERFACE
|
|
default ESP_HOSTED_PRIV_WIFI_TX_SPI_HD_HIGH_THRESHOLD if ESP_HOSTED_SPI_HD_HOST_INTERFACE
|
|
default ESP_HOSTED_PRIV_WIFI_TX_UART_HIGH_THRESHOLD if ESP_HOSTED_UART_HOST_INTERFACE
|
|
|
|
config ESP_HOSTED_TO_WIFI_DATA_THROTTLE_LOW_THRESHOLD
|
|
depends on ESP_HOSTED_HOST_TO_ESP_WIFI_DATA_THROTTLE
|
|
int "Low threshold to report host to stop dropping data"
|
|
range 0 ESP_HOSTED_TO_WIFI_DATA_THROTTLE_HIGH_THRESHOLD
|
|
default 60
|
|
help
|
|
Once the Wi-Fi is no more stressed, data throttling would be stopped, once slave Wi-Fi load
|
|
is lower than this threshold
|
|
endmenu
|
|
|
|
config ESP_HOSTED_DECODE_WIFI_RESERVED_FIELD
|
|
bool "Copy Wi-Fi configuration reserved field values"
|
|
default n
|
|
help
|
|
ESP-IDF Wi-Fi structures contain reserved bitmask values.
|
|
Enable this option if you want to copy these values between host and co-processor.
|
|
It is usually safe to ignore these reserved values.
|
|
|
|
config ESP_HOSTED_NETWORK_SPLIT_ENABLED
|
|
bool "Enable Network Split: Shared IP address between host and slave"
|
|
default n
|
|
help
|
|
Enables the LWIP stack on the slave to process its own set of ports,
|
|
alongside the host stack. Helps split network traffic and allows
|
|
background tasks on the slave, even when the host is in low-power mode.
|
|
|
|
menu "LWIP port config"
|
|
depends on ESP_HOSTED_NETWORK_SPLIT_ENABLED
|
|
|
|
menu "Host side (remote) LWIP port config"
|
|
config LWIP_TCP_LOCAL_PORT_RANGE_START
|
|
int "Host TCP start port"
|
|
default 49152
|
|
help
|
|
Host side TCP start port. Slave defaults to 61440
|
|
Slave range: 61440-65535
|
|
Host range: 49152-61439
|
|
|
|
config LWIP_TCP_LOCAL_PORT_RANGE_END
|
|
int "Host TCP end port"
|
|
default 61439
|
|
help
|
|
Host side TCP end port. Slave defaults to 65535
|
|
Slave range: 61440-65535
|
|
Host range: 49152-61439
|
|
|
|
config LWIP_UDP_LOCAL_PORT_RANGE_START
|
|
int "Host UDP start port"
|
|
default 49152
|
|
help
|
|
Host side UDP start port. Slave defaults to 61440
|
|
Slave range: 61440-65535
|
|
Host range: 49152-61439
|
|
|
|
config LWIP_UDP_LOCAL_PORT_RANGE_END
|
|
int "Host UDP end port"
|
|
default 61439
|
|
help
|
|
Host side UDP end port. Slave defaults to 65535
|
|
Slave range: 61440-65535
|
|
Host range: 49152-61439
|
|
endmenu
|
|
|
|
menu "Slave side (remote) LWIP port config"
|
|
config LWIP_TCP_REMOTE_PORT_RANGE_START
|
|
int "Slave TCP start port"
|
|
default 61440
|
|
help
|
|
Slave side TCP start port. Host defaults to 49152
|
|
Slave range: 61440-65535
|
|
Host range: 49152-61439
|
|
|
|
config LWIP_TCP_REMOTE_PORT_RANGE_END
|
|
int "Slave TCP end port"
|
|
default 65535
|
|
help
|
|
Slave side TCP end port. Host defaults to 61439
|
|
Slave range: 61440-65535
|
|
Host range: 49152-61439
|
|
|
|
config LWIP_UDP_REMOTE_PORT_RANGE_START
|
|
int "Slave UDP start port"
|
|
default 61440
|
|
help
|
|
Slave side UDP start port. Host defaults to 49152
|
|
Slave range: 61440-65535
|
|
Host range: 49152-61439
|
|
|
|
config LWIP_UDP_REMOTE_PORT_RANGE_END
|
|
int "Slave UDP end port"
|
|
default 65535
|
|
help
|
|
Slave side UDP end port. Host defaults to 61439
|
|
Slave range: 61440-65535
|
|
Host range: 49152-61439
|
|
endmenu
|
|
|
|
endmenu
|
|
|
|
config ESP_HOSTED_HOST_POWER_SAVE_ENABLED
|
|
bool "Allow host to power save"
|
|
depends on SOC_LIGHT_SLEEP_SUPPORTED || (SOC_DEEP_SLEEP_SUPPORTED && SOC_GPIO_SUPPORT_DEEPSLEEP_WAKEUP)
|
|
default n
|
|
|
|
config ESP_HOSTED_HOST_DEEP_SLEEP_ALLOWED
|
|
bool "Allow host to enter deep sleep. Slave will wakeup host using GPIO"
|
|
depends on ESP_HOSTED_HOST_POWER_SAVE_ENABLED && (SOC_GPIO_SUPPORT_DEEPSLEEP_WAKEUP && SOC_DEEP_SLEEP_SUPPORTED)
|
|
default y
|
|
help
|
|
Allow host to deep sleep for highest power saving. Only RTC memory and RTC GPIOs remain
|
|
powered during deep sleep. Slave will wake up host using a GPIO when needed. Host must
|
|
configure a valid RTC GPIO for wakeup. Deep sleep provides maximum power savings but has
|
|
longer wakeup time compared to light sleep.
|
|
|
|
|
|
menu "Host Power Save Configuration"
|
|
depends on ESP_HOSTED_HOST_DEEP_SLEEP_ALLOWED
|
|
|
|
config ESP_HOSTED_HOST_WAKEUP_GPIO
|
|
int "Host in: Host Wakeup GPIO"
|
|
default 5 if C2_C5_MODULE_SUB_BOARD
|
|
default 6 if IDF_TARGET_ESP32P4 && SLAVE_CHIPSET_ESP32C6 && !ESP_HOSTED_SPI_HD_HOST_INTERFACE
|
|
default 4 if IDF_TARGET_ESP32P4 && SLAVE_CHIPSET_ESP32C6 && ESP_HOSTED_SPI_HD_HOST_INTERFACE
|
|
default 6 if IDF_TARGET_ESP32P4 && SLAVE_CHIPSET_ESP32C5
|
|
default 6 if IDF_TARGET_ESP32P4 && !SLAVE_CHIPSET_ESP32C6 && !SLAVE_CHIPSET_ESP32C5
|
|
default 1 if IDF_TARGET_ESP32C3
|
|
default -1
|
|
range -1 15 if IDF_TARGET_ESP32P4
|
|
help
|
|
GPIO number to use for host wakeup from sleep.
|
|
Set to -1 to disable GPIO wakeup.
|
|
Only RTC GPIOs are supported for deep-sleep-wakeup.
|
|
|
|
choice PRIV_HOST_WAKEUP_GPIO_LEVEL
|
|
bool "Host Wakeup GPIO Level"
|
|
default PRIV_HOST_WAKEUP_GPIO_LEVEL_HIGH
|
|
|
|
config PRIV_HOST_WAKEUP_GPIO_LEVEL_HIGH
|
|
bool "High"
|
|
config PRIV_HOST_WAKEUP_GPIO_LEVEL_LOW
|
|
bool "Low"
|
|
endchoice
|
|
|
|
config ESP_HOSTED_HOST_WAKEUP_GPIO_LEVEL
|
|
int
|
|
default 1 if PRIV_HOST_WAKEUP_GPIO_LEVEL_HIGH
|
|
default 0 if PRIV_HOST_WAKEUP_GPIO_LEVEL_LOW
|
|
help
|
|
GPIO level to use for host wakeup from sleep.
|
|
Set to 0 to use low level, set to 1 to use high level.
|
|
|
|
endmenu
|
|
|
|
# Config Validation
|
|
if ESP_HOSTED_HOST_DEEP_SLEEP_ALLOWED
|
|
if !ESP_HOSTED_SDIO_HOST_INTERFACE && ESP_HOSTED_SLAVE_RESET_ONLY_IF_NECESSARY
|
|
comment "Error: Invalid configuration. Slave reset is mandatory for non SDIO transports"
|
|
endif
|
|
|
|
if ESP_HOSTED_HOST_WAKEUP_GPIO = -1
|
|
comment "Error: Host wake-up GPIO is mandatory"
|
|
endif
|
|
|
|
if ESP_HOSTED_SLAVE_RESET_ONLY_IF_NECESSARY && !ESP_HOSTED_HOST_RESTART_NO_COMMUNICATION_WITH_SLAVE
|
|
comment "Recommended to set up 'auto-restart of host' if communication with slave fails"
|
|
endif
|
|
endif
|
|
|
|
endmenu
|