Merge branch 'bugfix/backport_some_wifi_bugs_0323_v3.1' into 'release/v3.1'

esp_wifi: Backport some wifi bugs 0323 (backport v3.1)

See merge request espressif/esp-idf!8092
This commit is contained in:
Jiang Jiang Jian 2020-03-25 15:11:53 +08:00
commit 6b230cdbb2
7 changed files with 25 additions and 6 deletions

View file

@ -113,6 +113,7 @@ typedef struct {
int32_t (* _get_time)(void *t); int32_t (* _get_time)(void *t);
unsigned long (* _random)(void); unsigned long (* _random)(void);
void (* _log_write)(uint32_t level, const char* tag, const char* format, ...); void (* _log_write)(uint32_t level, const char* tag, const char* format, ...);
void (* _log_writev)(uint32_t level, const char* tag, const char* format, va_list args);
uint32_t (* _log_timestamp)(void); uint32_t (* _log_timestamp)(void);
void * (* _malloc_internal)(size_t size); void * (* _malloc_internal)(size_t size);
void * (* _realloc_internal)(void *ptr, size_t size); void * (* _realloc_internal)(void *ptr, size_t size);

View file

@ -214,7 +214,7 @@ typedef struct {
uint8_t channel; /**< Channel of ESP32 soft-AP */ uint8_t channel; /**< Channel of ESP32 soft-AP */
wifi_auth_mode_t authmode; /**< Auth mode of ESP32 soft-AP. Do not support AUTH_WEP in soft-AP mode */ wifi_auth_mode_t authmode; /**< Auth mode of ESP32 soft-AP. Do not support AUTH_WEP in soft-AP mode */
uint8_t ssid_hidden; /**< Broadcast SSID or not, default 0, broadcast the SSID */ uint8_t ssid_hidden; /**< Broadcast SSID or not, default 0, broadcast the SSID */
uint8_t max_connection; /**< Max number of stations allowed to connect in, default 4, max 4 */ uint8_t max_connection; /**< Max number of stations allowed to connect in, default 4, max 10 */
uint16_t beacon_interval; /**< Beacon interval, 100 ~ 60000 ms, default 100 ms */ uint16_t beacon_interval; /**< Beacon interval, 100 ~ 60000 ms, default 100 ms */
} wifi_ap_config_t; } wifi_ap_config_t;

@ -1 +1 @@
Subproject commit b095adb5419aa88a30c138bf4e5e75dc6e2fa89b Subproject commit a6e7e3e95c5539456b622d4aa288ded327f944f1

View file

@ -518,6 +518,7 @@ wifi_osi_funcs_t g_wifi_osi_funcs = {
._get_time = get_time_wrapper, ._get_time = get_time_wrapper,
._random = os_random, ._random = os_random,
._log_write = esp_log_write, ._log_write = esp_log_write,
._log_writev = esp_log_writev,
._log_timestamp = esp_log_timestamp, ._log_timestamp = esp_log_timestamp,
._malloc_internal = malloc_internal_wrapper, ._malloc_internal = malloc_internal_wrapper,
._realloc_internal = realloc_internal_wrapper, ._realloc_internal = realloc_internal_wrapper,

View file

@ -78,7 +78,7 @@ test cases:
- - SSC SSC2 sta -C -s <target_ssid> - - SSC SSC2 sta -C -s <target_ssid>
- - R SSC2 RE "\+JAP:CONNECTED,%%s"%%(<target_ssid>) - - R SSC2 RE "\+JAP:CONNECTED,%%s"%%(<target_ssid>)
- - SSC SSC1 ap -S -s <target_ssid> -n 15 - - SSC SSC1 ap -S -s <target_ssid> -n 15
- - R SSC1 C +SAP:OK - - R SSC1 C +SAP:ERROR
- - SSC SSC2 sta -C -s <target_ssid> - - SSC SSC2 sta -C -s <target_ssid>
- - R SSC2 RE "\+JAP:CONNECTED,%%s"%%(<target_ssid>) - - R SSC2 RE "\+JAP:CONNECTED,%%s"%%(<target_ssid>)
- - SSC SSC2 sta -D - - SSC SSC2 sta -D

View file

@ -108,6 +108,15 @@ void esp_log_write(esp_log_level_t level, const char* tag, const char* format, .
/** @cond */ /** @cond */
/**
* @brief Write message into the log, va_list variant
* @see esp_log_write()
*
* This function is provided to ease integration toward other logging framework,
* so that esp_log can be used as a log sink.
*/
void esp_log_writev(esp_log_level_t level, const char* tag, const char* format, va_list args);
#include "esp_log_internal.h" #include "esp_log_internal.h"
#ifndef LOG_LOCAL_LEVEL #ifndef LOG_LOCAL_LEVEL

View file

@ -184,9 +184,10 @@ void clear_log_level_list()
#endif #endif
} }
void IRAM_ATTR esp_log_write(esp_log_level_t level, void IRAM_ATTR esp_log_writev(esp_log_level_t level,
const char* tag, const char* tag,
const char* format, ...) const char* format,
va_list args)
{ {
if (!s_log_mutex) { if (!s_log_mutex) {
s_log_mutex = xSemaphoreCreateMutex(); s_log_mutex = xSemaphoreCreateMutex();
@ -210,9 +211,16 @@ void IRAM_ATTR esp_log_write(esp_log_level_t level,
return; return;
} }
(*s_log_print_func)(format, args);
}
void esp_log_write(esp_log_level_t level,
const char *tag,
const char *format, ...)
{
va_list list; va_list list;
va_start(list, format); va_start(list, format);
(*s_log_print_func)(format, list); esp_log_writev(level, tag, format, list);
va_end(list); va_end(list);
} }