1 /* 2 * Copyright (c) 2020 HiSilicon (Shanghai) Technologies CO., LIMITED. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 * Description: Header files shared by wlan_types.h and wlan_types_rom.h. 15 * Author: 16 */ 17 18 #ifndef __WLAN_TYPES_BASE_ROM_H__ 19 #define __WLAN_TYPES_BASE_ROM_H__ 20 21 #include "td_base.h" 22 #include "wlan_custom_type.h" 23 24 #ifdef __cplusplus 25 #if __cplusplus 26 extern "C" { 27 #endif 28 #endif 29 30 /***************************************************************************** 31 枚举定义 32 *****************************************************************************/ 33 /***************************************************************************** 34 3.1 基本枚举类型 35 *****************************************************************************/ 36 /* 管理帧子类型 */ 37 typedef enum { 38 WLAN_ASSOC_REQ = 0, /* 0000 */ 39 WLAN_ASSOC_RSP = 1, /* 0001 */ 40 WLAN_REASSOC_REQ = 2, /* 0010 */ 41 WLAN_REASSOC_RSP = 3, /* 0011 */ 42 WLAN_PROBE_REQ = 4, /* 0100 */ 43 WLAN_PROBE_RSP = 5, /* 0101 */ 44 WLAN_TIMING_AD = 6, /* 0110 */ 45 WLAN_MGMT_SUBTYPE_RESV1 = 7, /* 0111 */ 46 WLAN_BEACON = 8, /* 1000 */ 47 WLAN_ATIM = 9, /* 1001 */ 48 WLAN_DISASOC = 10, /* 1010 */ 49 WLAN_AUTH = 11, /* 1011 */ 50 WLAN_DEAUTH = 12, /* 1100 */ 51 WLAN_ACTION = 13, /* 1101 */ 52 WLAN_ACTION_NO_ACK = 14, /* 1110 */ 53 WLAN_MGMT_SUBTYPE_RESV2 = 15, /* 1111 */ 54 55 WLAN_MGMT_SUBTYPE_BUTT = 16 /* 一共16种管理帧子类型 */ 56 } wlan_frame_mgmt_subtype_enum; 57 58 /* 不应该BUTT后续存在枚举 */ 59 typedef enum { 60 WLAN_WME_AC_BE = 0, /* best effort */ 61 WLAN_WME_AC_BK = 1, /* background */ 62 WLAN_WME_AC_VI = 2, /* video */ 63 WLAN_WME_AC_VO = 3, /* voice */ 64 65 WLAN_WME_AC_BUTT = 4, 66 WLAN_WME_AC_MGMT = WLAN_WME_AC_BUTT, /* 管理AC,协议没有,对应硬件高优先级队列 */ 67 68 WLAN_WME_AC_PSM = 5, /* 节能AC, 协议没有,对应硬件组播队列 */ 69 } wlan_wme_ac_type_enum; 70 typedef osal_u8 wlan_wme_ac_type_enum_uint8; 71 72 /* TID编号类别 */ 73 typedef enum { 74 WLAN_TIDNO_BEST_EFFORT = 0, /* BE业务 */ 75 WLAN_TIDNO_BACKGROUND = 1, /* BK业务 */ 76 WLAN_TIDNO_UAPSD = 2, /* U-APSD */ 77 WLAN_TIDNO_ANT_TRAINING_LOW_PRIO = 3, /* 智能天线低优先级训练帧 */ 78 WLAN_TIDNO_ANT_TRAINING_HIGH_PRIO = 4, /* 智能天线高优先级训练帧 */ 79 WLAN_TIDNO_VIDEO = 5, /* VI业务 */ 80 WLAN_TIDNO_VOICE = 6, /* VO业务 */ 81 WLAN_TIDNO_BCAST = 7, /* 广播用户的广播或者组播报文 */ 82 83 WLAN_TIDNO_BUTT 84 } wlan_tidno_enum; 85 typedef osal_u8 wlan_tidno_enum_uint8; 86 87 /* TID编号类别放入平台 */ 88 89 /* VAP的工作模式 */ 90 typedef enum { 91 WLAN_VAP_MODE_CONFIG, /* 配置模式 */ 92 WLAN_VAP_MODE_BSS_STA, /* BSS STA模式 */ 93 WLAN_VAP_MODE_BSS_AP, /* BSS AP模式 */ 94 WLAN_VAP_MODE_WDS, /* WDS模式 */ 95 WLAN_VAP_MODE_MONITOER, /* 侦听模式 */ 96 WLAN_VAP_HW_TEST, 97 98 WLAN_VAP_MODE_BUTT 99 } wlan_vap_mode_enum; 100 typedef osal_u8 wlan_vap_mode_enum_uint8; 101 102 typedef enum { 103 WLAN_BAND_2G, 104 WLAN_BAND_5G, 105 106 WLAN_BAND_BUTT 107 } wlan_channel_band_enum; 108 typedef osal_u8 wlan_channel_band_enum_uint8; 109 110 /* 认证算法 */ 111 typedef enum { 112 WLAN_WITP_AUTH_OPEN_SYSTEM = 0, 113 WLAN_WITP_AUTH_SHARED_KEY, 114 WLAN_WITP_AUTH_FT, 115 WLAN_WITP_AUTH_SAE, /* 802.11-2016协议查得认证帧中Auth Alg mode 字段3为SAE认证 */ 116 WLAN_WITP_AUTH_NETWORK_EAP, 117 WLAN_WITP_AUTH_AUTOMATIC, 118 119 WLAN_WITP_AUTH_BUTT 120 } wlan_auth_alg_mode_enum; 121 typedef osal_u8 wlan_auth_alg_mode_enum_uint8; 122 123 typedef enum { 124 /* 注意: wlan_cipher_key_type_enum和hal_key_type_enum 值一致, 如果硬件有改变,则应该在HAL 层封装 */ 125 /* 此处保持和协议规定额秘钥类型一致 */ 126 WLAN_KEY_TYPE_TX_GTK = 0, /* TX GTK */ 127 WLAN_KEY_TYPE_PTK = 1, /* PTK */ 128 WLAN_KEY_TYPE_RX_GTK = 2, /* RX GTK */ 129 WLAN_KEY_TYPE_RX_GTK2 = 3, /* RX GTK2 51不用 */ 130 WLAN_KEY_TYPE_BUTT 131 } wlan_cipher_key_type_enum; 132 typedef osal_u8 wlan_cipher_key_type_enum_uint8; 133 134 typedef enum { 135 /* 注意: wlan_key_origin_enum_uint8和hal_key_origin_enum_uint8 值一致, 如果硬件有改变,则应该在HAL 层封装 */ 136 WLAN_AUTH_KEY = 0, /* Indicates that for this key, this STA is the authenticator */ 137 WLAN_SUPP_KEY = 1, /* Indicates that for this key, this STA is the supplicant */ 138 139 WLAN_KEY_ORIGIN_BUTT 140 } wlan_key_origin_enum; 141 typedef osal_u8 wlan_key_origin_enum_uint8; 142 143 typedef enum { 144 /* 按照80211-2012/ 11ac-2013 协议 Table 8-99 Cipher suite selectors 定义 */ 145 WLAN_80211_CIPHER_SUITE_GROUP_CIPHER = 0, 146 WLAN_80211_CIPHER_SUITE_WEP_40 = 1, 147 WLAN_80211_CIPHER_SUITE_TKIP = 2, 148 WLAN_80211_CIPHER_SUITE_RSV = 3, 149 WLAN_80211_CIPHER_SUITE_NO_ENCRYP = WLAN_80211_CIPHER_SUITE_RSV, /* 采用协议定义的保留值做不加密类型 */ 150 WLAN_80211_CIPHER_SUITE_CCMP = 4, 151 WLAN_80211_CIPHER_SUITE_WEP_104 = 5, 152 WLAN_80211_CIPHER_SUITE_BIP = 6, 153 WLAN_80211_CIPHER_SUITE_GROUP_DENYD = 7, 154 WLAN_80211_CIPHER_SUITE_GCMP = 8, /* GCMP-128 default for a DMG STA */ 155 WLAN_80211_CIPHER_SUITE_GCMP_256 = 9, 156 WLAN_80211_CIPHER_SUITE_CCMP_256 = 10, 157 WLAN_80211_CIPHER_SUITE_BIP_GMAC_128 = 11, /* BIP GMAC 128 */ 158 WLAN_80211_CIPHER_SUITE_BIP_GMAC_256 = 12, /* BIP GMAC 256 */ 159 WLAN_80211_CIPHER_SUITE_BIP_CMAC_256 = 13, /* BIP CMAC 256 */ 160 161 WLAN_80211_CIPHER_SUITE_WAPI = 14 /* 随意定,不影响11i即可 */ 162 } wlan_ciper_protocol_type_enum; 163 typedef osal_u8 wlan_ciper_protocol_type_enum_uint8; 164 165 typedef osal_u8 witp_wpa_versions_enum_uint8; 166 167 typedef struct { 168 wlan_cipher_key_type_enum_uint8 cipher_key_type; /* 密钥ID/类型 */ 169 wlan_ciper_protocol_type_enum_uint8 cipher_protocol_type; 170 osal_u8 cipher_key_id; 171 osal_u8 auc_resv[1]; 172 } wlan_security_txop_params_stru; 173 174 /* 调制方式枚举 */ 175 typedef enum { 176 WLAN_MOD_DSSS, 177 WLAN_MOD_OFDM, 178 179 WLAN_MOD_BUTT 180 } wlan_mod_enum; 181 typedef osal_u8 wlan_mod_enum_uint8; 182 183 /***************************************************************************** 184 3.4 VHT枚举类型 185 *****************************************************************************/ 186 typedef enum { 187 WLAN_VHT_MCS0, 188 WLAN_VHT_MCS1, 189 WLAN_VHT_MCS2, 190 WLAN_VHT_MCS3, 191 WLAN_VHT_MCS4, 192 WLAN_VHT_MCS5, 193 WLAN_VHT_MCS6, 194 WLAN_VHT_MCS7, 195 WLAN_VHT_MCS8, 196 WLAN_VHT_MCS9, 197 #ifdef _PRE_WLAN_FEATURE_1024QAM 198 WLAN_VHT_MCS10, 199 WLAN_VHT_MCS11, 200 #endif 201 202 WLAN_VHT_MCS_BUTT 203 } wlan_vht_mcs_enum; 204 typedef osal_u8 wlan_vht_mcs_enum_uint8; 205 206 typedef enum { 207 WLAN_LEGACY_11B_RESERVED1 = 0, 208 WLAN_SHORT_11B_2M_BPS = 1, 209 WLAN_SHORT_11B_5M5_BPS = 2, 210 WLAN_SHORT_11B_11M_BPS = 3, 211 212 WLAN_LONG_11B_1M_BPS = 4, 213 WLAN_LONG_11B_2M_BPS = 5, 214 WLAN_LONG_11B_5M5_BPS = 6, 215 WLAN_LONG_11B_11M_BPS = 7, 216 217 WLAN_LEGACY_OFDM_48M_BPS = 8, 218 WLAN_LEGACY_OFDM_24M_BPS = 9, 219 WLAN_LEGACY_OFDM_12M_BPS = 10, 220 WLAN_LEGACY_OFDM_6M_BPS = 11, 221 WLAN_LEGACY_OFDM_54M_BPS = 12, 222 WLAN_LEGACY_OFDM_36M_BPS = 13, 223 WLAN_LEGACY_OFDM_18M_BPS = 14, 224 WLAN_LEGACY_OFDM_9M_BPS = 15, 225 226 WLAN_LEGACY_RATE_VALUE_BUTT 227 } wlan_legacy_rate_value_enum; 228 typedef osal_u8 wlan_legacy_rate_value_enum_uint8; 229 230 /***************************************************************************** 231 3.3 HT枚举类型 232 *****************************************************************************/ 233 // 扩展或者删除字段时,务必同步调整 g_phy_bandwidth_sec_offset_table \ mac_vap_bw_mode_to_bw \ hal_mac_change_bw_mode_to_bw_index 234 typedef enum { 235 WLAN_BAND_WIDTH_20M, 236 WLAN_BAND_WIDTH_40PLUS, /* 从20信道+1 */ 237 WLAN_BAND_WIDTH_40MINUS, /* 从20信道-1 */ 238 WLAN_BAND_WIDTH_80PLUSPLUS, /* 从20信道+1, 从40信道+1 */ 239 WLAN_BAND_WIDTH_80PLUSMINUS, /* 从20信道+1, 从40信道-1 */ 240 WLAN_BAND_WIDTH_80MINUSPLUS, /* 从20信道-1, 从40信道+1 */ 241 WLAN_BAND_WIDTH_80MINUSMINUS, /* 从20信道-1, 从40信道-1 */ 242 WLAN_BAND_WIDTH_5M, 243 WLAN_BAND_WIDTH_10M, 244 WLAN_BAND_WIDTH_40M, 245 WLAN_BAND_WIDTH_80M, 246 WLAN_BAND_WIDTH_BUTT 247 } wlan_channel_bandwidth_enum; 248 typedef osal_u8 wlan_channel_bandwidth_enum_uint8; 249 250 /* 因为要用作预编译,所以由枚举改成宏,为了便于理解,下面的类型转义先不变 */ 251 typedef osal_u8 wlan_nss_enum_uint8; 252 253 typedef enum { 254 WLAN_HT_NON_STBC = 0, 255 WLAN_HT_ADD_ONE_NTS = 1, 256 WLAN_HT_ADD_TWO_NTS = 2, 257 258 WLAN_HT_STBC_BUTT 259 } wlan_ht_stbc_enum; 260 typedef osal_u8 wlan_ht_stbc_enum_uint8; 261 262 typedef struct { 263 osal_u8 group_id; /* group_id */ 264 osal_u8 txop_ps_not_allowed; 265 osal_u16 partial_aid; /* partial_aid */ 266 } wlan_groupid_partial_aid_stru; 267 268 /* channel结构体 */ 269 typedef struct { 270 osal_u8 chan_number; /* 主20MHz信道号 */ 271 wlan_channel_band_enum_uint8 band; /* 频段 */ 272 wlan_channel_bandwidth_enum_uint8 en_bandwidth; /* 带宽模式 */ 273 osal_u8 chan_idx; /* 信道索引号 */ 274 } mac_channel_stru; 275 276 /* channel switch结构体 */ 277 typedef struct { 278 mac_channel_stru mac_channel; 279 osal_bool clear_fifo; 280 osal_u8 resv[3]; /* 保留3字节对齐 */ 281 } mac_switch_channel_stru; 282 283 /***************************************************************************** 284 3.4 算法宏,枚举类型 285 *****************************************************************************/ 286 287 /* TPC工作模式 */ 288 typedef enum { 289 WLAN_TPC_WORK_MODE_DISABLE = 0, /* 禁用TPC动态调整功率模式: 直接采用固定功率模式,数据帧的Data0采用配置的, Data1~3以及管理帧、控制帧都用最大功率 */ 290 WLAN_TPC_WORK_MODE_ENABLE = 1, /* 自适应功率模式: 数据帧的Data0采用自适应功率, Data1~3以及管理帧、控制帧都用最大功率 */ 291 292 WLAN_TPC_WORK_MODE_BUTT 293 } wlan_tpc_work_mode_enum; 294 typedef osal_u8 wlan_tpc_mode_enum_uint8; 295 296 /***************************************************************************** 297 3.5 WME枚举类型 298 *****************************************************************************/ 299 300 /* WMM枚举类型放入平台 */ 301 302 /* 帧类型 (2-bit) */ 303 typedef enum { 304 WLAN_MANAGEMENT = 0, 305 WLAN_CONTROL = 1, 306 WLAN_DATA_BASICTYPE = 2, 307 WLAN_RESERVED = 3, 308 309 WLAN_FRAME_TYPE_BUTT 310 } wlan_frame_type_enum; 311 typedef osal_u8 wlan_frame_type_enum_uint8; 312 313 /* 帧子类型 (4-bit) */ 314 /* 管理帧子类型放入平台SPEC */ 315 316 /* 控制帧帧子类型 */ 317 typedef enum { 318 /* 0~6 reserved */ 319 WLAN_HE_TRIG_FRAME = 2, /* 0010 */ 320 WLAN_VHT_NDPA = 5, /* 0101 */ 321 WLAN_CONTROL_WRAPPER = 7, 322 WLAN_BLOCKACK_REQ = 8, 323 WLAN_BLOCKACK = 9, 324 WLAN_PS_POLL = 10, 325 WLAN_RTS = 11, 326 WLAN_CTS = 12, 327 WLAN_ACK = 13, 328 WLAN_CF_END = 14, 329 WLAN_CF_END_CF_ACK = 15, 330 331 WLAN_CONTROL_SUBTYPE_BUTT = 16, 332 } wlan_frame_control_subtype_enum; 333 334 /* 数据帧子类型 */ 335 typedef enum { 336 WLAN_DATA = 0, 337 WLAN_DATA_CF_ACK = 1, 338 WLAN_DATA_CF_POLL = 2, 339 WLAN_DATA_CF_ACK_POLL = 3, 340 WLAN_NULL_FRAME = 4, 341 WLAN_CF_ACK = 5, 342 WLAN_CF_POLL = 6, 343 WLAN_CF_ACK_POLL = 7, 344 WLAN_QOS_DATA = 8, 345 WLAN_QOS_DATA_CF_ACK = 9, 346 WLAN_QOS_DATA_CF_POLL = 10, 347 WLAN_QOS_DATA_CF_ACK_POLL = 11, 348 WLAN_QOS_NULL_FRAME = 12, 349 WLAN_DATA_SUBTYPE_RESV1 = 13, 350 WLAN_QOS_CF_POLL = 14, 351 WLAN_QOS_CF_ACK_POLL = 15, 352 353 WLAN_DATA_SUBTYPE_MGMT = 16, 354 } wlan_frame_data_subtype_enum; 355 356 /* ACK类型定义 */ 357 typedef enum { 358 WLAN_TX_NORMAL_ACK = 0, 359 WLAN_TX_NO_ACK, 360 WLAN_TX_NO_EXPLICIT_ACK, 361 WLAN_TX_BLOCK_ACK, 362 363 WLAN_TX_NUM_ACK_BUTT 364 } wlan_tx_ack_policy_enum; 365 typedef osal_u8 wlan_tx_ack_policy_enum_uint8; 366 367 /***************************************************************************** 368 3.6 信道枚举 369 *****************************************************************************/ 370 371 /* 信道编码方式 */ 372 typedef enum { 373 WLAN_BCC_CODE = 0, 374 WLAN_LDPC_CODE = 1, 375 WLAN_CHANNEL_CODE_BUTT 376 } wlan_channel_code_enum; 377 typedef osal_u8 wlan_channel_code_enum_uint8; 378 379 /* 扫描类型 */ 380 typedef enum { 381 WLAN_SCAN_TYPE_PASSIVE = 0, 382 WLAN_SCAN_TYPE_ACTIVE = 1, 383 384 WLAN_SCAN_TYPE_BUTT 385 } wlan_scan_type_enum; 386 typedef osal_u8 wlan_scan_type_enum_uint8; 387 388 /* 扫描模式 */ 389 typedef enum { 390 WLAN_SCAN_MODE_FOREGROUND = 0, /* 前景扫描不分AP/STA(即初始扫描,连续式) */ 391 WLAN_SCAN_MODE_BACKGROUND_STA = 1, /* STA背景扫描 */ 392 WLAN_SCAN_MODE_BACKGROUND_AP = 2, /* AP背景扫描(间隔式) */ 393 WLAN_SCAN_MODE_BACKGROUND_OBSS = 3, /* 20/40MHz共存的obss扫描 */ 394 WLAN_SCAN_MODE_BACKGROUND_ALG_INTF_DET = 4, 395 WLAN_SCAN_MODE_BACKGROUND_PNO = 5, /* PNO调度扫描 */ 396 WLAN_SCAN_MODE_RRM_BEACON_REQ = 6, 397 WLAN_SCAN_MODE_BACKGROUND_CSA = 7, /* 信道切换扫描 */ 398 WLAN_SCAN_MODE_BACKGROUND_HILINK = 8, /* hilink扫描未关联用户 */ 399 WLAN_SCAN_MODE_FTM_REQ = 9, 400 WLAN_SCAN_MODE_GNSS_SCAN = 10, 401 WLAN_SCAN_MODE_ROAM_SCAN = 11, 402 WLAN_SCAN_MODE_BACKGROUND_SDP = 12, 403 404 WLAN_SCAN_MODE_BUTT 405 } wlan_scan_mode_enum; 406 typedef osal_u8 wlan_scan_mode_enum_uint8; 407 408 typedef enum { 409 WLAN_LEGACY_VAP_MODE = 0, /* 非P2P设备 */ 410 WLAN_P2P_GO_MODE = 1, /* P2P_GO */ 411 WLAN_P2P_DEV_MODE = 2, /* P2P_Device */ 412 WLAN_P2P_CL_MODE = 3, /* P2P_CL */ 413 414 WLAN_P2P_BUTT 415 } wlan_p2p_mode_enum; 416 typedef osal_u8 wlan_p2p_mode_enum_uint8; 417 418 /***************************************************************************** 419 3.7 加密枚举 420 *****************************************************************************/ 421 422 /* 用户距离状态 */ 423 typedef enum { 424 WLAN_DISTANCE_NEAR = 0, 425 WLAN_DISTANCE_NORMAL = 1, 426 WLAN_DISTANCE_FAR = 2, 427 428 WLAN_DISTANCE_BUTT 429 } wlan_user_distance_enum; 430 typedef osal_u8 wlan_user_distance_enum_uint8; 431 432 /***************************************************************************** 433 3.8 linkloss场景枚举 434 *****************************************************************************/ 435 436 437 /***************************************************************************** 438 3.9 roc场景枚举 439 *****************************************************************************/ 440 441 /***************************************************************************** 442 3.10 roam场景枚举 443 *****************************************************************************/ 444 445 /***************************************************************************** 446 3.10 m2s切换枚举 447 *****************************************************************************/ 448 /* mimo-siso切换tpye */ 449 typedef enum { 450 WLAN_M2S_TYPE_SW = 0, 451 WLAN_M2S_TYPE_HW = 1, 452 453 WLAN_M2S_TYPE_BUTT 454 } wlan_m2s_tpye_enum; 455 typedef osal_u8 wlan_m2s_type_enum_uint8; 456 457 /* mimo-siso切换tpye */ 458 typedef enum { 459 WLAN_M2S_TRIGGER_MODE_DBDC = BIT0, 460 WLAN_M2S_TRIGGER_MODE_FAST_SCAN = BIT1, 461 WLAN_M2S_TRIGGER_MODE_RSSI = BIT2, 462 WLAN_M2S_TRIGGER_MODE_BTCOEX = BIT3, 463 WLAN_M2S_TRIGGER_MODE_COMMAND = BIT4, 464 WLAN_M2S_TRIGGER_MODE_TEST = BIT5, 465 WLAN_M2S_TRIGGER_MODE_CUSTOM = BIT6, /* 定制化优先级高,只能被蓝牙打断 */ 466 WLAN_M2S_TRIGGER_MODE_SPEC = BIT7, /* spec优先级最高,不允许打断 */ 467 468 WLAN_M2S_TRIGGER_MODE_BUTT 469 } wlan_m2s_trigger_mode_enum; 470 typedef osal_u8 wlan_m2s_trigger_mode_enum_uint8; 471 472 /***************************************************************************** 473 3.11 m2s切换枚举 474 *****************************************************************************/ 475 476 /***************************************************************************** 477 STRUCT定义 478 *****************************************************************************/ 479 /* m2s触发条件 */ 480 typedef struct { 481 osal_u8 dbdc : 1, /* dbdc触发 */ 482 fast_on : 1, /* 并发扫描触发 */ 483 rssi_snr : 1, /* rssi/snr触发 */ 484 btcoex : 1, /* btcoex触发 */ 485 command : 1, /* 上层命令触发 */ 486 test : 1, /* 测试命令触发 */ 487 custom : 1, /* 定制化触发 */ 488 spec : 1; /* RF规格触发 */ 489 } wlan_m2s_mode_stru; 490 491 /* action帧发送类型枚举 */ 492 typedef enum { 493 WLAN_M2S_ACTION_TYPE_SMPS = 0, /* action采用smps */ 494 WLAN_M2S_ACTION_TYPE_OPMODE = 1, /* action采用opmode */ 495 WLAN_M2S_ACTION_TYPE_NONE = 2, /* 切换不发action帧 */ 496 497 WLAN_M2S_ACTION_TYPE_BUTT 498 } wlan_m2s_action_type_enum; 499 typedef osal_u8 wlan_m2s_action_type_enum_uint8; 500 501 #ifdef __cplusplus 502 #if __cplusplus 503 } 504 #endif 505 #endif 506 507 #endif /* end of wlan_types.h */ 508