mirror of
https://github.com/espressif/esp-idf.git
synced 2026-10-01 18:50:34 +03:00
feat(wifi): support disable 11ac and 11ax in efuse
This commit is contained in:
@@ -76,7 +76,7 @@ idf_component_register(SRCS "${srcs}"
|
||||
INCLUDE_DIRS "include" "include/local" "wifi_apps/include" "wifi_apps/nan_app/include"
|
||||
|
||||
REQUIRES esp_event esp_phy esp_netif
|
||||
PRIV_REQUIRES esp_pm esp_timer nvs_flash
|
||||
PRIV_REQUIRES esp_pm esp_timer nvs_flash efuse
|
||||
wpa_supplicant hal lwip esp_coex
|
||||
PRIV_INCLUDE_DIRS ../wpa_supplicant/src/ ../wpa_supplicant/esp_supplicant/src/
|
||||
wifi_apps/roaming_app/include wifi_apps/roaming_app/src
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2022-2025 Espressif Systems (Shanghai) CO LTD
|
||||
* SPDX-FileCopyrightText: 2022-2026 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
@@ -641,6 +641,11 @@ static void esp_phy_disable_wrapper(void)
|
||||
esp_phy_disable(PHY_MODEM_WIFI);
|
||||
}
|
||||
|
||||
static bool esp_wifi_disable_ac_ax_wrapper(void)
|
||||
{
|
||||
return false; // disable 11ac and 11ax is not supported on esp32c5.
|
||||
}
|
||||
|
||||
wifi_osi_funcs_t g_wifi_osi_funcs = {
|
||||
._version = ESP_WIFI_OS_ADAPTER_VERSION,
|
||||
._env_is_chip = esp_coex_common_env_is_chip_wrapper,
|
||||
@@ -764,5 +769,6 @@ wifi_osi_funcs_t g_wifi_osi_funcs = {
|
||||
._coex_schm_flexible_period_set = coex_schm_flexible_period_set_wrapper,
|
||||
._coex_schm_flexible_period_get = coex_schm_flexible_period_get_wrapper,
|
||||
._coex_schm_get_phase_by_idx = coex_schm_get_phase_by_idx_wrapper,
|
||||
._wifi_disable_ac_ax = esp_wifi_disable_ac_ax_wrapper,
|
||||
._magic = ESP_WIFI_OS_ADAPTER_MAGIC,
|
||||
};
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2022-2025 Espressif Systems (Shanghai) CO LTD
|
||||
* SPDX-FileCopyrightText: 2022-2026 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
@@ -579,6 +579,11 @@ static void *sleep_retention_find_link_by_id_wrapper(int id)
|
||||
}
|
||||
#endif
|
||||
|
||||
static bool esp_wifi_disable_ac_ax_wrapper(void)
|
||||
{
|
||||
return false; // disable 11ac and 11ax is not supported on esp32c6.
|
||||
}
|
||||
|
||||
wifi_osi_funcs_t g_wifi_osi_funcs = {
|
||||
._version = ESP_WIFI_OS_ADAPTER_VERSION,
|
||||
._env_is_chip = esp_coex_common_env_is_chip_wrapper,
|
||||
@@ -702,5 +707,6 @@ wifi_osi_funcs_t g_wifi_osi_funcs = {
|
||||
._coex_schm_flexible_period_set = coex_schm_flexible_period_set_wrapper,
|
||||
._coex_schm_flexible_period_get = coex_schm_flexible_period_get_wrapper,
|
||||
._coex_schm_get_phase_by_idx = coex_schm_get_phase_by_idx_wrapper,
|
||||
._wifi_disable_ac_ax = esp_wifi_disable_ac_ax_wrapper,
|
||||
._magic = ESP_WIFI_OS_ADAPTER_MAGIC,
|
||||
};
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2022-2025 Espressif Systems (Shanghai) CO LTD
|
||||
* SPDX-FileCopyrightText: 2022-2026 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
@@ -40,6 +40,8 @@
|
||||
#include "esp_private/periph_ctrl.h"
|
||||
#include "esp_private/esp_clk.h"
|
||||
#include "nvs.h"
|
||||
#include "esp_efuse.h"
|
||||
#include "esp_efuse_table.h"
|
||||
#include "os.h"
|
||||
#include "esp_smartconfig.h"
|
||||
#ifdef CONFIG_ESP_COEX_ENABLED
|
||||
@@ -641,6 +643,11 @@ static void esp_phy_disable_wrapper(void)
|
||||
esp_phy_disable(PHY_MODEM_WIFI);
|
||||
}
|
||||
|
||||
static bool esp_wifi_disable_ac_ax_wrapper(void)
|
||||
{
|
||||
return esp_efuse_read_field_bit(ESP_EFUSE_DIS_WIFI6);
|
||||
}
|
||||
|
||||
wifi_osi_funcs_t g_wifi_osi_funcs = {
|
||||
._version = ESP_WIFI_OS_ADAPTER_VERSION,
|
||||
._env_is_chip = esp_coex_common_env_is_chip_wrapper,
|
||||
@@ -764,5 +771,6 @@ wifi_osi_funcs_t g_wifi_osi_funcs = {
|
||||
._coex_schm_flexible_period_set = coex_schm_flexible_period_set_wrapper,
|
||||
._coex_schm_flexible_period_get = coex_schm_flexible_period_get_wrapper,
|
||||
._coex_schm_get_phase_by_idx = coex_schm_get_phase_by_idx_wrapper,
|
||||
._wifi_disable_ac_ax = esp_wifi_disable_ac_ax_wrapper,
|
||||
._magic = ESP_WIFI_OS_ADAPTER_MAGIC,
|
||||
};
|
||||
|
||||
@@ -156,6 +156,9 @@ typedef struct wifi_osi_funcs_t {
|
||||
int (*_coex_schm_flexible_period_set)(uint8_t);
|
||||
uint8_t (*_coex_schm_flexible_period_get)(void);
|
||||
void * (*_coex_schm_get_phase_by_idx)(int);
|
||||
#if CONFIG_SOC_WIFI_HE_SUPPORT
|
||||
bool (*_wifi_disable_ac_ax)(void);
|
||||
#endif
|
||||
int32_t _magic;
|
||||
} wifi_osi_funcs_t;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user