Merge branch 'bugfix/modify_bandwidth_in_ap_records' into 'master'

fix(wifi): modify bandwidth in wifi_ap_record_t

Closes WIFIBUG-910

See merge request espressif/esp-idf!34455
This commit is contained in:
Jiang Jiang Jian
2024-11-05 10:47:11 +08:00
6 changed files with 63 additions and 17 deletions

View File

@@ -269,6 +269,19 @@ typedef enum {
WIFI_CIPHER_TYPE_UNKNOWN, /**< The cipher type is unknown */ WIFI_CIPHER_TYPE_UNKNOWN, /**< The cipher type is unknown */
} wifi_cipher_type_t; } wifi_cipher_type_t;
/**
* @brief Wi-Fi bandwidth type
*/
typedef enum {
WIFI_BW_HT20 = 1, /**< Bandwidth is HT20 */
WIFI_BW20 = WIFI_BW_HT20, /**< Bandwidth is 20 MHz */
WIFI_BW_HT40 = 2, /**< Bandwidth is HT40 */
WIFI_BW40 = WIFI_BW_HT40, /**< Bandwidth is 40 MHz */
WIFI_BW80 = 3, /**< Bandwidth is 80 MHz */
WIFI_BW160 = 4, /**< Bandwidth is 160 MHz */
WIFI_BW80_BW80 = 5, /**< Bandwidth is 80 + 80 MHz */
} wifi_bandwidth_t;
/** /**
* @brief Wi-Fi antenna * @brief Wi-Fi antenna
*/ */
@@ -314,9 +327,7 @@ typedef struct {
uint32_t reserved: 22; /**< Bit: 10..31 reserved */ uint32_t reserved: 22; /**< Bit: 10..31 reserved */
wifi_country_t country; /**< Country information of AP */ wifi_country_t country; /**< Country information of AP */
wifi_he_ap_info_t he_ap; /**< HE AP info */ wifi_he_ap_info_t he_ap; /**< HE AP info */
uint8_t bandwidth; /**< For either 20 MHz or 40 MHz operation, the channel width field is set to 0. wifi_bandwidth_t bandwidth; /**< Bandwidth of AP */
For AP 80 MHz, this value is set to 1. For AP 160 MHz, this value is set to 2.
For AP 80 + 80 MHz, this value is set to 3.*/
uint8_t vht_ch_freq1; /**< This fields are used only AP bandwidth is 80 and 160 MHz, to transmit the center channel uint8_t vht_ch_freq1; /**< This fields are used only AP bandwidth is 80 and 160 MHz, to transmit the center channel
frequency of the BSS. For AP bandwidth is 80 + 80 MHz, it is the center channel frequency frequency of the BSS. For AP bandwidth is 80 + 80 MHz, it is the center channel frequency
of the lower frequency segment.*/ of the lower frequency segment.*/
@@ -458,19 +469,6 @@ typedef struct {
uint16_t ghz_5g; /**< Represents 5 GHz protocol, support 802.11a or 802.11n or 802.11ac or 802.11ax */ uint16_t ghz_5g; /**< Represents 5 GHz protocol, support 802.11a or 802.11n or 802.11ac or 802.11ax */
} wifi_protocols_t; } wifi_protocols_t;
/**
* @brief Wi-Fi bandwidth type
*/
typedef enum {
WIFI_BW_HT20 = 1, /**< Bandwidth is HT20 */
WIFI_BW20 = WIFI_BW_HT20, /**< Bandwidth is 20 MHz */
WIFI_BW_HT40 = 2, /**< Bandwidth is HT40 */
WIFI_BW40 = WIFI_BW_HT40, /**< Bandwidth is 40 MHz */
WIFI_BW80 = 3, /**< Bandwidth is 80 MHz */
WIFI_BW160 = 4, /**< Bandwidth is 160 MHz */
WIFI_BW80_BW80 = 5, /**< Bandwidth is 80 + 80 MHz */
} wifi_bandwidth_t;
/** /**
* @brief Description of a Wi-Fi band bandwidths * @brief Description of a Wi-Fi band bandwidths
*/ */

View File

@@ -10,3 +10,4 @@ Migration from 5.3 to 5.4
system system
bluetooth-classic bluetooth-classic
storage storage
wifi

View File

@@ -0,0 +1,22 @@
Wi-Fi
======
:link_to_translation:`zh_CN:[中文]`
Wi-Fi Scan and Connect
------------------------
The following types have been modified:
- :component_file:`esp_wifi/include/esp_wifi_he_types.h`
- :cpp:struct:`esp_wifi_htc_omc_t`:
- ``uph_id``, ``ul_pw_headroom``, ``min_tx_pw_flag`` are deprecated.
- :component_file:`esp_wifi/include/esp_wifi_types_generic.h`
- :cpp:struct:`wifi_ap_record_t`:
- The type of ``bandwidth`` has been changed from ``uint8_t`` to ``wifi_bandwidth_t``

View File

@@ -10,3 +10,4 @@
system system
bluetooth-classic bluetooth-classic
storage storage
wifi

View File

@@ -0,0 +1,24 @@
Wi-Fi
=====
:link_to_translation:`en:[English]`
Wi-Fi 扫描和连接
------------------------
以下类型已被更改:
- :component_file:`esp_wifi/include/esp_wifi_he_types.h`
- :cpp:struct:`esp_wifi_htc_omc_t` 中:
- ``uph_id`` ``ul_pw_headroom`` ``min_tx_pw_flag`` 字段被弃用
- :component_file:`esp_wifi/include/esp_wifi_types_generic.h`
- :cpp:struct:`wifi_ap_record_t` 中:
- ``bandwidth`` 的类型从 ``uint8_t`` 更改为 ``wifi_bandwidth_t``