From 564068d5afee66e508f94a9163ec7daadda05af2 Mon Sep 17 00:00:00 2001 From: chenjianxing Date: Fri, 11 Jun 2021 16:29:26 +0800 Subject: [PATCH 1/2] esp_wifi: support esp32s3 wifi and fix not tx 9M rate issue --- components/esp_phy/lib | 2 +- components/esp_rom/esp32s3/ld/esp32s3.rom.ld | 2 +- components/esp_wifi/Kconfig | 2 +- components/esp_wifi/lib | 2 +- .../wifi/iperf/sdkconfig.defaults.esp32s3 | 24 +++++++++---------- 5 files changed, 16 insertions(+), 16 deletions(-) diff --git a/components/esp_phy/lib b/components/esp_phy/lib index 0deb3621c2..6def308291 160000 --- a/components/esp_phy/lib +++ b/components/esp_phy/lib @@ -1 +1 @@ -Subproject commit 0deb3621c216cc198aecd642d1b7c4b99afe322c +Subproject commit 6def308291aaba24a2baaa27fe2a4d50c79420cc diff --git a/components/esp_rom/esp32s3/ld/esp32s3.rom.ld b/components/esp_rom/esp32s3/ld/esp32s3.rom.ld index af0ea28e2a..ef277cf17e 100644 --- a/components/esp_rom/esp32s3/ld/esp32s3.rom.ld +++ b/components/esp_rom/esp32s3/ld/esp32s3.rom.ld @@ -2027,7 +2027,7 @@ ic_reset_rx_ba = 0x40005a3c; ieee80211_align_eb = 0x40005a48; ieee80211_ampdu_reorder = 0x40005a54; ieee80211_ampdu_start_age_timer = 0x40005a60; -ieee80211_encap_esfbuf = 0x40005a6c; +/* ieee80211_encap_esfbuf = 0x40005a6c; */ ieee80211_is_tx_allowed = 0x40005a78; ieee80211_output_pending_eb = 0x40005a84; ieee80211_output_process = 0x40005a90; diff --git a/components/esp_wifi/Kconfig b/components/esp_wifi/Kconfig index 1561c734e0..35f76ff95e 100644 --- a/components/esp_wifi/Kconfig +++ b/components/esp_wifi/Kconfig @@ -280,7 +280,7 @@ menu "Wi-Fi" config ESP_WIFI_FTM_ENABLE bool "WiFi FTM" default n - depends on (IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32C3) + depends on (IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32S3) help Enable feature Fine Timing Measurement for calculating WiFi Round-Trip-Time (RTT). diff --git a/components/esp_wifi/lib b/components/esp_wifi/lib index ae2b749c21..845eb82031 160000 --- a/components/esp_wifi/lib +++ b/components/esp_wifi/lib @@ -1 +1 @@ -Subproject commit ae2b749c217a8bec6f862bca1e06000b56045ff5 +Subproject commit 845eb8203143a3797bcae7b576b88bafd3ab02a3 diff --git a/examples/wifi/iperf/sdkconfig.defaults.esp32s3 b/examples/wifi/iperf/sdkconfig.defaults.esp32s3 index a7dde05537..ea100e5fa2 100644 --- a/examples/wifi/iperf/sdkconfig.defaults.esp32s3 +++ b/examples/wifi/iperf/sdkconfig.defaults.esp32s3 @@ -1,19 +1,19 @@ # # ESP32S3-specific # -CONFIG_ESP32_WIFI_STATIC_RX_BUFFER_NUM=8 -CONFIG_ESP32_WIFI_DYNAMIC_RX_BUFFER_NUM=24 -CONFIG_ESP32_WIFI_DYNAMIC_TX_BUFFER_NUM=24 +CONFIG_ESP32_WIFI_STATIC_RX_BUFFER_NUM=16 +CONFIG_ESP32_WIFI_DYNAMIC_RX_BUFFER_NUM=32 +CONFIG_ESP32_WIFI_DYNAMIC_TX_BUFFER_NUM=32 CONFIG_ESP32_WIFI_AMPDU_TX_ENABLED=y -CONFIG_ESP32_WIFI_TX_BA_WIN=16 +CONFIG_ESP32_WIFI_TX_BA_WIN=32 CONFIG_ESP32_WIFI_AMPDU_RX_ENABLED=y -CONFIG_ESP32_WIFI_RX_BA_WIN=16 +CONFIG_ESP32_WIFI_RX_BA_WIN=32 -CONFIG_LWIP_TCP_SND_BUF_DEFAULT=28000 -CONFIG_LWIP_TCP_WND_DEFAULT=28000 -CONFIG_LWIP_TCP_RECVMBOX_SIZE=32 -CONFIG_LWIP_UDP_RECVMBOX_SIZE=32 -CONFIG_LWIP_TCPIP_RECVMBOX_SIZE=32 +CONFIG_LWIP_TCP_SND_BUF_DEFAULT=65535 +CONFIG_LWIP_TCP_WND_DEFAULT=65535 +CONFIG_LWIP_TCP_RECVMBOX_SIZE=64 +CONFIG_LWIP_UDP_RECVMBOX_SIZE=64 +CONFIG_LWIP_TCPIP_RECVMBOX_SIZE=64 CONFIG_ESP32S3_DEFAULT_CPU_FREQ_240=y CONFIG_ESP32S3_DEFAULT_CPU_FREQ_MHZ=240 @@ -21,6 +21,6 @@ CONFIG_ESP32S3_DEFAULT_CPU_FREQ_MHZ=240 CONFIG_ESPTOOLPY_FLASHMODE_QIO=y CONFIG_ESPTOOLPY_FLASHFREQ_80M=y -CONFIG_ESP32S3_INSTRUCTION_CACHE_16KB=y -CONFIG_ESP32S3_INSTRUCTION_CACHE_LINE_16B=y +CONFIG_ESP32S3_INSTRUCTION_CACHE_32KB=y +CONFIG_ESP32S3_INSTRUCTION_CACHE_LINE_32B=y CONFIG_ESP32S3_INSTRUCTION_CACHE_WRAP=y From 8fd261b3ebaddd384ce648729197e0b2cc8b2dcb Mon Sep 17 00:00:00 2001 From: WangShichang Date: Thu, 17 Jun 2021 15:51:13 +0800 Subject: [PATCH 2/2] esp_phy: update esp32s3 phy init data --- .../esp_phy/esp32s3/include/phy_init_data.h | 131 +++++++++--------- 1 file changed, 68 insertions(+), 63 deletions(-) diff --git a/components/esp_phy/esp32s3/include/phy_init_data.h b/components/esp_phy/esp32s3/include/phy_init_data.h index 774be4e48c..8624b3e7a7 100644 --- a/components/esp_phy/esp32s3/include/phy_init_data.h +++ b/components/esp_phy/esp32s3/include/phy_init_data.h @@ -44,72 +44,76 @@ static const char phy_init_magic_pre[] = PHY_INIT_MAGIC; * @brief Structure containing default recommended PHY initialization parameters. */ static const esp_phy_init_data_t phy_init_data= { { - 3, - 3, - 0x05, - 0x09, - 0x06, - 0x05, - 0x03, - 0x06, - 0x05, - 0x04, - 0x06, - 0x04, - 0x05, + 0x00, + 0x00, + LIMIT(CONFIG_ESP32_PHY_MAX_TX_POWER * 4, 0, 0x50), + LIMIT(CONFIG_ESP32_PHY_MAX_TX_POWER * 4, 0, 0x50), + LIMIT(CONFIG_ESP32_PHY_MAX_TX_POWER * 4, 0, 0x50), + LIMIT(CONFIG_ESP32_PHY_MAX_TX_POWER * 4, 0, 0x4c), + LIMIT(CONFIG_ESP32_PHY_MAX_TX_POWER * 4, 0, 0x4c), + LIMIT(CONFIG_ESP32_PHY_MAX_TX_POWER * 4, 0, 0x48), + LIMIT(CONFIG_ESP32_PHY_MAX_TX_POWER * 4, 0, 0x4c), + LIMIT(CONFIG_ESP32_PHY_MAX_TX_POWER * 4, 0, 0x48), + LIMIT(CONFIG_ESP32_PHY_MAX_TX_POWER * 4, 0, 0x48), + LIMIT(CONFIG_ESP32_PHY_MAX_TX_POWER * 4, 0, 0x44), + LIMIT(CONFIG_ESP32_PHY_MAX_TX_POWER * 4, 0, 0x4a), + LIMIT(CONFIG_ESP32_PHY_MAX_TX_POWER * 4, 0, 0x46), + LIMIT(CONFIG_ESP32_PHY_MAX_TX_POWER * 4, 0, 0x46), + LIMIT(CONFIG_ESP32_PHY_MAX_TX_POWER * 4, 0, 0x42), 0x00, 0x00, 0x00, - 0x00, - 0x05, - 0x09, - 0x06, - 0x05, - 0x03, - 0x06, - 0x05, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0xfc, - 0xfc, - 0xfe, - 0xf0, - 0xf0, - 0xf0, - 0xe0, - 0xe0, - 0xe0, - 0x18, - 0x18, - 0x18, - LIMIT(CONFIG_ESP32_PHY_MAX_TX_POWER * 4, 0, 84), - LIMIT(CONFIG_ESP32_PHY_MAX_TX_POWER * 4, 0, 72), - LIMIT(CONFIG_ESP32_PHY_MAX_TX_POWER * 4, 0, 66), - LIMIT(CONFIG_ESP32_PHY_MAX_TX_POWER * 4, 0, 60), - LIMIT(CONFIG_ESP32_PHY_MAX_TX_POWER * 4, 0, 56), - LIMIT(CONFIG_ESP32_PHY_MAX_TX_POWER * 4, 0, 52), - 0, - 1, - 1, - 2, - 2, - 3, - 4, - 5, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, + 0xff, 0, 0, 0, @@ -151,6 +155,7 @@ static const esp_phy_init_data_t phy_init_data= { { 0, 0, 0, + 0x74 } }; static const char phy_init_magic_post[] = PHY_INIT_MAGIC;