From c9e7a04a9e04b7c76826ff8124b8a1293b84c1e4 Mon Sep 17 00:00:00 2001 From: xiehang Date: Tue, 10 Mar 2020 20:01:39 +0800 Subject: [PATCH] Update wifi lib 1. Add wifi stop check at wifi deinit entry. 2. Add TX packets size check. 3. Reduce wifi bin size. 4. Fix the bug for setting channel when wifi in NULL mode. 5. Place the Vendor Specific element at the end according to the protocol. 6. Coex adjust scheme when bt is in connnected status. --- components/esp32/esp_adapter.c | 1 + components/esp32/include/esp_wifi_os_adapter.h | 1 + components/esp32/include/esp_wifi_types.h | 2 +- components/esp32/lib | 2 +- components/log/include/esp_log.h | 9 +++++++++ components/log/log.c | 14 +++++++++++--- 6 files changed, 24 insertions(+), 5 deletions(-) diff --git a/components/esp32/esp_adapter.c b/components/esp32/esp_adapter.c index c300fa09ce..ce1d1846aa 100644 --- a/components/esp32/esp_adapter.c +++ b/components/esp32/esp_adapter.c @@ -588,6 +588,7 @@ wifi_osi_funcs_t g_wifi_osi_funcs = { ._get_time = get_time_wrapper, ._random = os_random, ._log_write = esp_log_write, + ._log_writev = esp_log_writev, ._log_timestamp = esp_log_timestamp, ._malloc_internal = malloc_internal_wrapper, ._realloc_internal = realloc_internal_wrapper, diff --git a/components/esp32/include/esp_wifi_os_adapter.h b/components/esp32/include/esp_wifi_os_adapter.h index 89778661a4..666c44d926 100644 --- a/components/esp32/include/esp_wifi_os_adapter.h +++ b/components/esp32/include/esp_wifi_os_adapter.h @@ -105,6 +105,7 @@ typedef struct { int32_t (* _get_time)(void *t); unsigned long (* _random)(void); 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); void * (* _malloc_internal)(size_t size); void * (* _realloc_internal)(void *ptr, size_t size); diff --git a/components/esp32/include/esp_wifi_types.h b/components/esp32/include/esp_wifi_types.h index 3f6eccde0b..2f50da3c51 100644 --- a/components/esp32/include/esp_wifi_types.h +++ b/components/esp32/include/esp_wifi_types.h @@ -214,7 +214,7 @@ typedef struct { 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 */ 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 */ } wifi_ap_config_t; diff --git a/components/esp32/lib b/components/esp32/lib index 3875c41510..b7749ef26a 160000 --- a/components/esp32/lib +++ b/components/esp32/lib @@ -1 +1 @@ -Subproject commit 3875c415108573d7067efb64c51b1ceb39f764f6 +Subproject commit b7749ef26a3d3179a2f5f4b2fa9c53025c450b3b diff --git a/components/log/include/esp_log.h b/components/log/include/esp_log.h index e57aabbdd5..8616c56103 100644 --- a/components/log/include/esp_log.h +++ b/components/log/include/esp_log.h @@ -108,6 +108,15 @@ void esp_log_write(esp_log_level_t level, const char* tag, const char* format, . /** @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" #ifndef LOG_LOCAL_LEVEL diff --git a/components/log/log.c b/components/log/log.c index d0304a308b..bdc558d07e 100644 --- a/components/log/log.c +++ b/components/log/log.c @@ -184,9 +184,10 @@ void clear_log_level_list() #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* format, ...) + const char* format, + va_list args) { if (!s_log_mutex) { s_log_mutex = xSemaphoreCreateMutex(); @@ -210,9 +211,16 @@ void IRAM_ATTR esp_log_write(esp_log_level_t level, 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_start(list, format); - (*s_log_print_func)(format, list); + esp_log_writev(level, tag, format, list); va_end(list); }