From 1db35d7b8f077636bef52b85a178edac622943ed Mon Sep 17 00:00:00 2001 From: muhaidong Date: Thu, 6 Nov 2025 21:10:31 +0800 Subject: [PATCH 1/3] fix(wifi): fix some wapi and fragment issues 1. fix gcmp fragment rx issue 2. support wapi fragment tx and rx 3. fix wapi uskid issue 4. fix lmac tx done assert issue 5. fix scan done or disconnected event miss issue 6. fix offchan action tx memory leak issue --- components/esp_rom/esp32c2/ld/esp32c2.rom.eco4.ld | 2 +- components/esp_rom/esp32c2/ld/esp32c2.rom.ld | 2 +- components/esp_rom/esp32c5/ld/esp32c5.rom.pp.ld | 2 +- components/esp_rom/esp32c61/ld/esp32c61.rom.pp.ld | 2 +- components/esp_wifi/lib | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/components/esp_rom/esp32c2/ld/esp32c2.rom.eco4.ld b/components/esp_rom/esp32c2/ld/esp32c2.rom.eco4.ld index 3a0dafc1e4..56c8c141ca 100644 --- a/components/esp_rom/esp32c2/ld/esp32c2.rom.eco4.ld +++ b/components/esp_rom/esp32c2/ld/esp32c2.rom.eco4.ld @@ -30,7 +30,7 @@ pm_sleep = 0x40001bbc; //pm_tbtt_process = 0x40001bc4; ppAssembleAMPDU = 0x40001bcc; ppCalTxAMPDULength = 0x40001bd8; -ppRxFragmentProc = 0x40001c28; +/*ppRxFragmentProc = 0x40001c28;*/ ppRxPkt = 0x40001c2c; pp_coex_tx_request = 0x40001c54; /* rcGetSched = 0x40001c88; */ diff --git a/components/esp_rom/esp32c2/ld/esp32c2.rom.ld b/components/esp_rom/esp32c2/ld/esp32c2.rom.ld index bba447a7a5..ab59a9deaf 100644 --- a/components/esp_rom/esp32c2/ld/esp32c2.rom.ld +++ b/components/esp_rom/esp32c2/ld/esp32c2.rom.ld @@ -711,7 +711,7 @@ wDev_Rxbuf_Deinit = 0x40001e5c; ppCalTkipMic = 0x40001e60; wDev_SnifferRxData = 0x40001e64; hal_crypto_enable = 0x40001e68; -hal_crypto_disable = 0x40001e6c; +/*hal_crypto_disable = 0x40001e6c;*/ wDev_Insert_KeyEntry = 0x40001e70; wDev_remove_KeyEntry = 0x40001e74; rc_enable_trc = 0x40001e78; diff --git a/components/esp_rom/esp32c5/ld/esp32c5.rom.pp.ld b/components/esp_rom/esp32c5/ld/esp32c5.rom.pp.ld index 64e04af8d7..af6dfdd3b4 100644 --- a/components/esp_rom/esp32c5/ld/esp32c5.rom.pp.ld +++ b/components/esp_rom/esp32c5/ld/esp32c5.rom.pp.ld @@ -184,7 +184,7 @@ ppRecycleAmpdu = 0x40000e78; ppRecycleRxPkt = 0x40000e7c; ppResortTxAMPDU = 0x40000e80; ppResumeTxAMPDU = 0x40000e84; -ppRxFragmentProc = 0x40000e88; +/*ppRxFragmentProc = 0x40000e88;*/ /* ppRxPkt = 0x40000e8c; */ /* ppRxProtoProc = 0x40000e90; */ ppSearchTxQueue = 0x40000e94; diff --git a/components/esp_rom/esp32c61/ld/esp32c61.rom.pp.ld b/components/esp_rom/esp32c61/ld/esp32c61.rom.pp.ld index b648e2a8e1..ad54aacc49 100644 --- a/components/esp_rom/esp32c61/ld/esp32c61.rom.pp.ld +++ b/components/esp_rom/esp32c61/ld/esp32c61.rom.pp.ld @@ -184,7 +184,7 @@ ppRecycleAmpdu = 0x40000df0; ppRecycleRxPkt = 0x40000df4; ppResortTxAMPDU = 0x40000df8; ppResumeTxAMPDU = 0x40000dfc; -ppRxFragmentProc = 0x40000e00; +/*ppRxFragmentProc = 0x40000e00;*/ /*ppRxPkt = 0x40000e04;*/ /*ppRxProtoProc = 0x40000e08;*/ ppSearchTxQueue = 0x40000e0c; diff --git a/components/esp_wifi/lib b/components/esp_wifi/lib index a4e903fe43..8f933de0fd 160000 --- a/components/esp_wifi/lib +++ b/components/esp_wifi/lib @@ -1 +1 @@ -Subproject commit a4e903fe43bf09a95022f9802db43d39740ccc0b +Subproject commit 8f933de0fdd1a6577f862db2810eafc61463d4d8 From ccdefe96dc4fce53085b461dc1134eeec71ba18c Mon Sep 17 00:00:00 2001 From: muhaidong Date: Mon, 5 Jan 2026 17:25:16 +0800 Subject: [PATCH 2/3] fix(wifi): fix lmac tx done assert issue --- components/esp_rom/esp32c2/ld/esp32c2.rom.eco4.ld | 2 +- components/esp_rom/esp32c3/ld/esp32c3.rom.eco7.ld | 2 +- components/esp_rom/esp32c5/ld/esp32c5.rom.pp.ld | 2 +- components/esp_rom/esp32c61/ld/esp32c61.rom.pp.ld | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/components/esp_rom/esp32c2/ld/esp32c2.rom.eco4.ld b/components/esp_rom/esp32c2/ld/esp32c2.rom.eco4.ld index 56c8c141ca..df398b3a6e 100644 --- a/components/esp_rom/esp32c2/ld/esp32c2.rom.eco4.ld +++ b/components/esp_rom/esp32c2/ld/esp32c2.rom.eco4.ld @@ -15,7 +15,7 @@ esf_buf_recycle = 0x40001ae8; hal_mac_tx_set_ppdu = 0x40001af8; ic_mac_deinit = 0x40001b00; lmacAdjustTimestamp = 0x40001b10; -lmacDiscardMSDU = 0x40001b18; +/*lmacDiscardMSDU = 0x40001b18;*/ lmacEndFrameExchangeSequence = 0x40001b1c; lmacMSDUAged = 0x40001b28; //lmacSetTxFrame = 0x40001b4c; diff --git a/components/esp_rom/esp32c3/ld/esp32c3.rom.eco7.ld b/components/esp_rom/esp32c3/ld/esp32c3.rom.eco7.ld index d10b0524de..e49badf07e 100644 --- a/components/esp_rom/esp32c3/ld/esp32c3.rom.eco7.ld +++ b/components/esp_rom/esp32c3/ld/esp32c3.rom.eco7.ld @@ -8,7 +8,7 @@ esf_buf_alloc_dynamic = 0x400015c0; esf_buf_recycle = 0x400015c4; /*hal_mac_tx_set_ppdu = 0x400015d4;*/ ic_mac_deinit = 0x400015dc; -lmacDiscardMSDU = 0x400015f4; +/*lmacDiscardMSDU = 0x400015f4;*/ /*lmacSetTxFrame = 0x40001628;*/ lmacTxDone = 0x4000162c; /*lmacTxFrame = 0x40001630;*/ diff --git a/components/esp_rom/esp32c5/ld/esp32c5.rom.pp.ld b/components/esp_rom/esp32c5/ld/esp32c5.rom.pp.ld index af6dfdd3b4..7e498f0847 100644 --- a/components/esp_rom/esp32c5/ld/esp32c5.rom.pp.ld +++ b/components/esp_rom/esp32c5/ld/esp32c5.rom.pp.ld @@ -59,7 +59,7 @@ is_lmac_idle = 0x40000c84; ic_get_he_rts_threshold_bytes = 0x40000c88; lmacAdjustTimestamp = 0x40000c8c; lmacDiscardAgedMSDU = 0x40000c90; -lmacDiscardMSDU = 0x40000c94; +/*lmacDiscardMSDU = 0x40000c94;*/ lmacEndFrameExchangeSequence = 0x40000c98; lmacIsIdle = 0x40000c9c; lmacIsLongFrame = 0x40000ca0; diff --git a/components/esp_rom/esp32c61/ld/esp32c61.rom.pp.ld b/components/esp_rom/esp32c61/ld/esp32c61.rom.pp.ld index ad54aacc49..f11f406e68 100644 --- a/components/esp_rom/esp32c61/ld/esp32c61.rom.pp.ld +++ b/components/esp_rom/esp32c61/ld/esp32c61.rom.pp.ld @@ -57,7 +57,7 @@ is_lmac_idle = 0x40000bf4; ic_get_he_rts_threshold_bytes = 0x40000bf8; lmacAdjustTimestamp = 0x40000bfc; lmacDiscardAgedMSDU = 0x40000c00; -lmacDiscardMSDU = 0x40000c04; +/*lmacDiscardMSDU = 0x40000c04;*/ lmacEndFrameExchangeSequence = 0x40000c08; lmacIsIdle = 0x40000c0c; lmacIsLongFrame = 0x40000c10; From 08597df45bbe95f2e331ed8ce392431fafc903a3 Mon Sep 17 00:00:00 2001 From: muhaidong Date: Mon, 12 Jan 2026 11:14:10 +0800 Subject: [PATCH 3/3] fix(wifi): fix esp32s3 ping failure with ip and wifi fragmented packets --- components/esp_rom/esp32s3/ld/esp32s3.rom.ld | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/esp_rom/esp32s3/ld/esp32s3.rom.ld b/components/esp_rom/esp32s3/ld/esp32s3.rom.ld index 4e9df1c155..63b0f8464a 100644 --- a/components/esp_rom/esp32s3/ld/esp32s3.rom.ld +++ b/components/esp_rom/esp32s3/ld/esp32s3.rom.ld @@ -955,7 +955,7 @@ lmacReachShortLimit = 0x40005394; lmacRecycleMPDU = 0x400053a0; lmacRxDone = 0x400053ac; /*lmacSetTxFrame = 0x400053b8;*/ -lmacTxDone = 0x400053c4; +/*lmacTxDone = 0x400053c4;*/ /*lmacTxFrame = 0x400053d0;*/ mac_tx_set_duration = 0x400053dc; /* mac_tx_set_htsig = 0x400053e8;*/