Merge branch 'bugfix/fix_sometimes_sta_can_not_get_ip_from_softap_issue' into 'master'

lower the dhcp discover and request retry backoff time

Closes WIFI-5646, WIFI-5647, WIFI-4774, WIFI-4823, and WIFI-5823

See merge request espressif/esp-idf!24224
This commit is contained in:
Chen Jian Xing 2023-07-11 15:18:41 +08:00
commit 576ce647f8
2 changed files with 4 additions and 6 deletions

@ -1 +1 @@
Subproject commit 57c29648ff40e2a19a51683717928aaf766a0495
Subproject commit 269a58f18597aedec31c439e34cdaea47229dda3

View File

@ -3,7 +3,7 @@
*
* SPDX-License-Identifier: BSD-3-Clause
*
* SPDX-FileContributor: 2015-2022 Espressif Systems (Shanghai) CO LTD
* SPDX-FileContributor: 2015-2023 Espressif Systems (Shanghai) CO LTD
*/
#ifndef LWIP_HDR_ESP_LWIPOPTS_H
#define LWIP_HDR_ESP_LWIPOPTS_H
@ -355,11 +355,9 @@ extern "C" {
#define DHCP_COARSE_TIMER_SECS CONFIG_LWIP_DHCP_COARSE_TIMER_SECS
#define DHCP_NEXT_TIMEOUT_THRESHOLD (3)
/* Since for embedded devices it's not that hard to miss a discover packet, so lower
* the discover retry backoff time from (2,4,8,16,32,60,60)s to (500m,1,2,4,8,15,15)s.
* the discover and request retry backoff time from (2,4,8,16,32,60,60)s to (500m,1,2,4,4,4,4)s.
*/
#define DHCP_REQUEST_TIMEOUT_SEQUENCE(state, tries) (state == DHCP_STATE_REQUESTING ? \
(uint16_t)(1 * 1000) : \
(uint16_t)(((tries) < 6 ? 1 << (tries) : 60) * 250))
#define DHCP_REQUEST_TIMEOUT_SEQUENCE(tries) ((uint16_t)(((tries) < 5 ? 1 << (tries) : 16) * 250))
static inline uint32_t timeout_from_offered(uint32_t lease, uint32_t min)
{