Merge branch 'bugfix/backport_wifi_fix_1208_v5.1' into 'release/v5.1'

fix(wifi): backport some wifi bugfix(v5.1)

See merge request espressif/esp-idf!27766
This commit is contained in:
Jiang Jiang Jian 2023-12-11 17:26:06 +08:00
commit 70f1bd582f
7 changed files with 91 additions and 21 deletions

View File

@ -1536,10 +1536,10 @@ pm_on_tbtt = 0x40001ba8;
pm_sleep_for = 0x40001bc0; pm_sleep_for = 0x40001bc0;
/* pm_tbtt_process = 0x40001bc4; */ /* pm_tbtt_process = 0x40001bc4; */
ppAMPDU2Normal = 0x40001bc8; ppAMPDU2Normal = 0x40001bc8;
ppAssembleAMPDU = 0x40001bcc; /*ppAssembleAMPDU = 0x40001bcc;*/
ppCalFrameTimes = 0x40001bd0; ppCalFrameTimes = 0x40001bd0;
ppCalSubFrameLength = 0x40001bd4; ppCalSubFrameLength = 0x40001bd4;
ppCalTxAMPDULength = 0x40001bd8; /*ppCalTxAMPDULength = 0x40001bd8;*/
ppCheckTxAMPDUlength = 0x40001bdc; ppCheckTxAMPDUlength = 0x40001bdc;
ppDequeueRxq_Locked = 0x40001be0; ppDequeueRxq_Locked = 0x40001be0;
ppDequeueTxQ = 0x40001be4; ppDequeueTxQ = 0x40001be4;
@ -1559,8 +1559,8 @@ ppRecycleAmpdu = 0x40001c18;
ppRecycleRxPkt = 0x40001c1c; ppRecycleRxPkt = 0x40001c1c;
ppResortTxAMPDU = 0x40001c20; ppResortTxAMPDU = 0x40001c20;
ppResumeTxAMPDU = 0x40001c24; ppResumeTxAMPDU = 0x40001c24;
ppRxFragmentProc = 0x40001c28; /*ppRxFragmentProc = 0x40001c28;*/
ppRxPkt = 0x40001c2c; /* ppRxPkt = 0x40001c2c; */
ppRxProtoProc = 0x40001c30; ppRxProtoProc = 0x40001c30;
ppSearchTxQueue = 0x40001c34; ppSearchTxQueue = 0x40001c34;
ppSearchTxframe = 0x40001c38; ppSearchTxframe = 0x40001c38;
@ -1588,7 +1588,7 @@ rcLowerSched = 0x40001c8c;
rcSetTxAmpduLimit = 0x40001c90; rcSetTxAmpduLimit = 0x40001c90;
/* rcTxUpdatePer = 0x40001c94;*/ /* rcTxUpdatePer = 0x40001c94;*/
rcUpdateAckSnr = 0x40001c98; rcUpdateAckSnr = 0x40001c98;
rcUpdateRate = 0x40001c9c; /*rcUpdateRate = 0x40001c9c;*/
rcUpdateTxDone = 0x40001ca0; rcUpdateTxDone = 0x40001ca0;
rcUpdateTxDoneAmpdu2 = 0x40001ca4; rcUpdateTxDoneAmpdu2 = 0x40001ca4;
rcUpSched = 0x40001ca8; rcUpSched = 0x40001ca8;
@ -1663,7 +1663,7 @@ lmacRetryTxFrame = 0x40001db8;
lmacProcessCollisions_task = 0x40001dbc; lmacProcessCollisions_task = 0x40001dbc;
/*lmacProcessTxopQComplete = 0x40001dc0;*/ /*lmacProcessTxopQComplete = 0x40001dc0;*/
lmacInitAc = 0x40001dc4; lmacInitAc = 0x40001dc4;
lmacInit = 0x40001dc8; /*lmacInit = 0x40001dc8;*/
mac_tx_set_txop_q = 0x40001dcc; mac_tx_set_txop_q = 0x40001dcc;
/*hal_init = 0x40001dd0;*/ /*hal_init = 0x40001dd0;*/
hal_mac_rx_set_policy = 0x40001dd4; hal_mac_rx_set_policy = 0x40001dd4;

View File

@ -19,12 +19,12 @@ pm_parse_beacon = 0x40001688;
pm_process_tim = 0x4000168c; pm_process_tim = 0x4000168c;
pm_rx_beacon_process = 0x40001690; pm_rx_beacon_process = 0x40001690;
pm_rx_data_process = 0x40001694; pm_rx_data_process = 0x40001694;
pm_sleep = 0x40001698; /* pm_sleep = 0x40001698;*/
pm_tbtt_process = 0x400016a0; /* pm_tbtt_process = 0x400016a0;*/
ppMapTxQueue = 0x400016d8; ppMapTxQueue = 0x400016d8;
ppProcTxSecFrame = 0x400016dc; ppProcTxSecFrame = 0x400016dc;
ppRxFragmentProc = 0x40001704; /*ppRxFragmentProc = 0x40001704;*/
rcGetSched = 0x40001764; /* rcGetSched = 0x40001764;*/
rcTxUpdatePer = 0x40001770; rcTxUpdatePer = 0x40001770;
rcUpdateTxDone = 0x4000177c; rcUpdateTxDone = 0x4000177c;
wDevCheckBlockError = 0x400017b4; wDevCheckBlockError = 0x400017b4;

View File

@ -1559,10 +1559,10 @@ pm_on_tbtt = 0x40001684;
pm_sleep_for = 0x4000169c; pm_sleep_for = 0x4000169c;
/* pm_tbtt_process = 0x400016a0; */ /* pm_tbtt_process = 0x400016a0; */
ppAMPDU2Normal = 0x400016a4; ppAMPDU2Normal = 0x400016a4;
ppAssembleAMPDU = 0x400016a8; /*ppAssembleAMPDU = 0x400016a8;*/
ppCalFrameTimes = 0x400016ac; ppCalFrameTimes = 0x400016ac;
ppCalSubFrameLength = 0x400016b0; ppCalSubFrameLength = 0x400016b0;
ppCalTxAMPDULength = 0x400016b4; /*ppCalTxAMPDULength = 0x400016b4;*/
ppCheckTxAMPDUlength = 0x400016b8; ppCheckTxAMPDUlength = 0x400016b8;
ppDequeueRxq_Locked = 0x400016bc; ppDequeueRxq_Locked = 0x400016bc;
ppDequeueTxQ = 0x400016c0; ppDequeueTxQ = 0x400016c0;
@ -1581,7 +1581,7 @@ ppRecycleRxPkt = 0x400016f8;
ppResortTxAMPDU = 0x400016fc; ppResortTxAMPDU = 0x400016fc;
ppResumeTxAMPDU = 0x40001700; ppResumeTxAMPDU = 0x40001700;
/* ppRxFragmentProc = 0x40001704; */ /* ppRxFragmentProc = 0x40001704; */
ppRxPkt = 0x40001708; /* ppRxPkt = 0x40001708; */
ppRxProtoProc = 0x4000170c; ppRxProtoProc = 0x4000170c;
ppSearchTxQueue = 0x40001710; ppSearchTxQueue = 0x40001710;
ppSearchTxframe = 0x40001714; ppSearchTxframe = 0x40001714;
@ -1608,7 +1608,7 @@ rcLowerSched = 0x40001768;
rcSetTxAmpduLimit = 0x4000176c; rcSetTxAmpduLimit = 0x4000176c;
/* rcTxUpdatePer = 0x40001770;*/ /* rcTxUpdatePer = 0x40001770;*/
rcUpdateAckSnr = 0x40001774; rcUpdateAckSnr = 0x40001774;
rcUpdateRate = 0x40001778; /*rcUpdateRate = 0x40001778;*/
/* rcUpdateTxDone = 0x4000177c; */ /* rcUpdateTxDone = 0x4000177c; */
rcUpdateTxDoneAmpdu2 = 0x40001780; rcUpdateTxDoneAmpdu2 = 0x40001780;
rcUpSched = 0x40001784; rcUpSched = 0x40001784;

View File

@ -100,7 +100,7 @@ ppRecycleAmpdu = 0x40000d10;
ppRecycleRxPkt = 0x40000d14; ppRecycleRxPkt = 0x40000d14;
//ppResortTxAMPDU = 0x40000d18; //ppResortTxAMPDU = 0x40000d18;
ppResumeTxAMPDU = 0x40000d1c; ppResumeTxAMPDU = 0x40000d1c;
ppRxFragmentProc = 0x40000d20; /*ppRxFragmentProc = 0x40000d20;*/
//ppRxPkt = 0x40000d24; //ppRxPkt = 0x40000d24;
ppRxProtoProc = 0x40000d28; ppRxProtoProc = 0x40000d28;
ppSearchTxQueue = 0x40000d2c; ppSearchTxQueue = 0x40000d2c;
@ -129,7 +129,7 @@ rcLowerSched = 0x40000d84;
rcSetTxAmpduLimit = 0x40000d88; rcSetTxAmpduLimit = 0x40000d88;
rcTxUpdatePer = 0x40000d8c; rcTxUpdatePer = 0x40000d8c;
rcUpdateAckSnr = 0x40000d90; rcUpdateAckSnr = 0x40000d90;
rcUpdateRate = 0x40000d94; /*rcUpdateRate = 0x40000d94;*/
rcUpdateTxDone = 0x40000d98; rcUpdateTxDone = 0x40000d98;
rcUpdateTxDoneAmpdu2 = 0x40000d9c; rcUpdateTxDoneAmpdu2 = 0x40000d9c;
rcUpSched = 0x40000da0; rcUpSched = 0x40000da0;

View File

@ -1861,10 +1861,10 @@ pm_on_tbtt = 0x400054cc;
pm_sleep_for = 0x40005514; pm_sleep_for = 0x40005514;
/* pm_tbtt_process = 0x40005520; */ /* pm_tbtt_process = 0x40005520; */
ppAMPDU2Normal = 0x4000552c; ppAMPDU2Normal = 0x4000552c;
ppAssembleAMPDU = 0x40005538; /*ppAssembleAMPDU = 0x40005538;*/
ppCalFrameTimes = 0x40005544; ppCalFrameTimes = 0x40005544;
ppCalSubFrameLength = 0x40005550; ppCalSubFrameLength = 0x40005550;
ppCalTxAMPDULength = 0x4000555c; /*ppCalTxAMPDULength = 0x4000555c;*/
ppCheckTxAMPDUlength = 0x40005568; ppCheckTxAMPDUlength = 0x40005568;
ppDequeueRxq_Locked = 0x40005574; ppDequeueRxq_Locked = 0x40005574;
ppDequeueTxQ = 0x40005580; ppDequeueTxQ = 0x40005580;
@ -1884,7 +1884,7 @@ ppRecycleRxPkt = 0x40005628;
ppResortTxAMPDU = 0x40005634; ppResortTxAMPDU = 0x40005634;
ppResumeTxAMPDU = 0x40005640; ppResumeTxAMPDU = 0x40005640;
/* ppRxFragmentProc = 0x4000564c; */ /* ppRxFragmentProc = 0x4000564c; */
ppRxPkt = 0x40005658; /* ppRxPkt = 0x40005658; */
ppRxProtoProc = 0x40005664; ppRxProtoProc = 0x40005664;
ppSearchTxQueue = 0x40005670; ppSearchTxQueue = 0x40005670;
ppSearchTxframe = 0x4000567c; ppSearchTxframe = 0x4000567c;
@ -1912,7 +1912,7 @@ rcLowerSched = 0x40005778;
rcSetTxAmpduLimit = 0x40005784; rcSetTxAmpduLimit = 0x40005784;
/* rcTxUpdatePer = 0x40005790;*/ /* rcTxUpdatePer = 0x40005790;*/
rcUpdateAckSnr = 0x4000579c; rcUpdateAckSnr = 0x4000579c;
rcUpdateRate = 0x400057a8; /*rcUpdateRate = 0x400057a8;*/
/* rcUpdateTxDone = 0x400057b4; */ /* rcUpdateTxDone = 0x400057b4; */
rcUpdateTxDoneAmpdu2 = 0x400057c0; rcUpdateTxDoneAmpdu2 = 0x400057c0;
rcUpSched = 0x400057cc; rcUpSched = 0x400057cc;

@ -1 +1 @@
Subproject commit b75e61ea71cffae1b9cdea6494e170c980c4317b Subproject commit 8c6662224e36879fa33945009641bde405cb4c58

View File

@ -391,7 +391,77 @@ void ieee80211_ftm_attach(void)
#ifndef CONFIG_ESP_WIFI_SOFTAP_SUPPORT #ifndef CONFIG_ESP_WIFI_SOFTAP_SUPPORT
void net80211_softap_funcs_init(void) void net80211_softap_funcs_init(void)
{ {
/* Do not remove, stub to overwrite weak link in Wi-Fi Lib */
} }
bool ieee80211_ap_try_sa_query(void *p)
{
/* Do not remove, stub to overwrite weak link in Wi-Fi Lib */
return false;
}
bool ieee80211_ap_sa_query_timeout(void *p)
{
/* Do not remove, stub to overwrite weak link in Wi-Fi Lib */
return false;
}
int add_mic_ie_bip(void *p)
{
/* Do not remove, stub to overwrite weak link in Wi-Fi Lib */
return 0;
}
void ieee80211_free_beacon_eb(void)
{
/* Do not remove, stub to overwrite weak link in Wi-Fi Lib */
}
int ieee80211_pwrsave(void *p1, void *p2)
{
/* Do not remove, stub to overwrite weak link in Wi-Fi Lib */
return 0;
}
void cnx_node_remove(void *p)
{
/* Do not remove, stub to overwrite weak link in Wi-Fi Lib */
}
int ieee80211_set_tim(void *p, int arg)
{
/* Do not remove, stub to overwrite weak link in Wi-Fi Lib */
return 0;
}
bool ieee80211_is_bufferable_mmpdu(void *p)
{
/* Do not remove, stub to overwrite weak link in Wi-Fi Lib */
return false;
}
void cnx_node_leave(void *p, uint8_t arg)
{
/* Do not remove, stub to overwrite weak link in Wi-Fi Lib */
}
void ieee80211_beacon_construct(void *p1, void *p2, void *p3, void *p4)
{
/* Do not remove, stub to overwrite weak link in Wi-Fi Lib */
}
void * ieee80211_assoc_resp_construct(void *p, int arg)
{
/* Do not remove, stub to overwrite weak link in Wi-Fi Lib */
return NULL;
}
void * ieee80211_alloc_proberesp(void *p, int arg)
{
/* Do not remove, stub to overwrite weak link in Wi-Fi Lib */
return NULL;
}
#endif #endif
#ifndef CONFIG_ESP_WIFI_NAN_ENABLE #ifndef CONFIG_ESP_WIFI_NAN_ENABLE