• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 file for hmac_tcp_opt_struc.c.
15  * Create: 2022-12-15
16  */
17 #ifndef __WLAN_MIB_HCM_H__
18 #define __WLAN_MIB_HCM_H__
19 
20 /*****************************************************************************
21     其他头文件包含
22 *****************************************************************************/
23 #include "oal_types.h"
24 #include "wlan_types_common.h"
25 #include "wlan_mib_type.h"
26 
27 #ifdef __cplusplus
28 #if __cplusplus
29 extern "C" {
30 #endif
31 #endif
32 
33 /*****************************************************************************
34     配置命令 ID
35     第一段  MIB 类配置
36     第二段  非MIB类配置
37 *****************************************************************************/
38 typedef osal_u16 wlan_cfgid_enum_uint16;
39 
40 /* Start of dot11smt OBJECT IDENTIFIER ::= { ieee802dot11 1 } */
41 typedef struct {
42     osal_u8           dot11_station_id[WLAN_MAC_ADDR_LEN];          /* dot11StationID MacAddress, */
43     osal_u8           resv[2];
44 
45     osal_u32          dot11_authentication_response_time_out;    /* dot11AuthenticationResponseTimeOut Unsigned32, */
46     osal_u32          dot11_beacon_period;                     /* dot11BeaconPeriod Unsigned32, */
47     osal_u32          dot11_dtim_period;                       /* dot11DTIMPeriod Unsigned32, */
48     osal_u32          dot11_association_response_time_out;       /* dot11AssociationResponseTimeOut Unsigned32, */
49     osal_u32    dot11_association_sa_query_maximum_timeout; /* dot11AssociationSAQueryMaximumTimeout Unsigned32 */
50     osal_u32          dot11_association_sa_query_retry_timeout; /* dot11AssociationSAQueryRetryTimeout Unsigned32 */
51 
52     osal_u8           dot11_desired_ssid[32 + 1];             /* dot11DesiredSSID OCTET STRING, SIZE(0..32) */
53     osal_u16           dot11_max_assoc_user_nums;
54 
55     oal_bool_enum_uint8  dot11_tx_aggregate_actived;                  /* VAP协议能力是否支持发送聚合 */
56     oal_bool_enum_uint8  dot11_cfg_ampdu_tx_ative;                     /* 配置命令是否允许发送聚合 */
57     oal_bool_enum_uint8  dot11_amsdu_plus_ampdu_active;                 /* ADDBA REQ中标志是否支持amsdu */
58     oal_bool_enum_uint8  dot11_cfg_amsdu_tx_ative;                     /* 配置命令是否支持amsdu */
59 
60     oal_bool_enum_uint8  dot11_amsdu_aggregate_ative;                 /* VAP协议能力是否支持amsdu发送聚合 */
61     osal_u8            dot11_rx_ba_session_number;                   /* 该vap下,rx BA会话的数目 */
62     osal_u8            dot11_tx_ba_session_number;                   /* 该vap下,tx BA会话的数目 */
63 
64     wlan_auth_alg_mode_enum_uint8        dot11_authentication_mode;          /* 认证算法 */
65     wlan_addba_mode_enum_uint8           dot11_add_ba_mode;
66     wlan_mib_desired_bsstype_enum_uint8  dot11_desired_bss_type;        /* dot11DesiredBSSType INTEGER, */
67     wlan_mib_pwr_mgmt_mode_enum_uint8    dot11_power_management_mode;   /* dot11PowerManagementMode INTEGER, */
68 
69     osal_u8            dot11_sta_auth_count;                        /* 记录STA发起关联的次数 */
70     osal_u8            dot11_sta_assoc_count;
71     osal_u8            dot11_support_rate_set_nums;
72     osal_u8            dot11_tx_traffic_classify_flag;               /* 业务识别功能开关 */
73 
74     /* Byte1. All TruthValue */
75     oal_bool_enum_uint8 dot11_multi_domain_capability_activated      : 1; /* dot11MultiDomainCapabilityActivated */
76     oal_bool_enum_uint8 dot11_spectrum_management_implemented       : 1; /* dot11SpectrumManagementImplemented */
77     oal_bool_enum_uint8 dot11_spectrum_management_required          : 1; /* dot11SpectrumManagementRequired */
78     oal_bool_enum_uint8 dot11_qos_option_implemented                : 1; /* dot11QosOptionImplemented */
79     /* dot11ImmediateBlockAckOptionImplemented */
80     oal_bool_enum_uint8 dot11_immediate_block_ack_option_implemented  : 1;
81     oal_bool_enum_uint8 dot11_delayed_block_ack_option_implemented : 1; /* dot11DelayedBlockAckOptionImplemented */
82     oal_bool_enum_uint8 dot11_apsd_option_implemented               : 1; /* dot11APSDOptionImplemented */
83     oal_bool_enum_uint8 dot11_qbss_load_implemented                 : 1; /* dot11QBSSLoadImplemented */
84     /* Byte2. All TruthValue */
85     oal_bool_enum_uint8 dot11_radio_measurement_activated           : 1; /* dot11RadioMeasurementActivated */
86     oal_bool_enum_uint8 dot11_extended_channel_switch_activated      : 1; /* dot11ExtendedChannelSwitchActivated */
87     oal_bool_enum_uint8 dot11_rm_link_measurement_activated          : 1; /* dot11RMLinkMeasurementActivated */
88     /* dot11RMBeaconPassiveMeasurementActivated */
89     oal_bool_enum_uint8 dot11_rm_beacon_passive_measurement_activated : 1;
90     /* dot11RMBeaconActiveMeasurementActivated */
91     oal_bool_enum_uint8 dot11_rm_beacon_active_measurement_activated  : 1;
92     /* dot11RMBeaconTableMeasurementActivated */
93     oal_bool_enum_uint8 dot11_rm_beacon_table_measurement_activated   : 1;
94     oal_bool_enum_uint8 dot11_wireless_management_implemented       : 1; /* dot11WirelessManagementImplemented */
95     oal_bool_enum_uint8 resv1                                    : 1;
96     /* Byte3 */
97     oal_bool_enum_uint8 dot112040_switch_prohibited                : 1;
98     oal_bool_enum_uint8 dot11_wps_active                           : 1;
99     oal_bool_enum_uint8 resv2                                       : 6;
100     /* Byte4 */
101     osal_u8             dot11_80211i_mode;   /* 指示当前的方式时WPA还是WPA2, bit0 = 1,WPA; bit1 = 1, RSN */
102 
103     oal_bool_enum_uint8 dot11_rm_neighbor_report_activated;                          /* TruthValue */
104     oal_bool_enum_uint8 dot11_rm_channel_load_measurement_activated;                  /* TruthValue, */
105 
106 #ifdef _PRE_WLAN_FEATURE_WUR_TX
107     oal_bool_enum_uint8 dot11_wur_option_implemented;                               /* TruthValue, */
108 #endif
109 
110     wlan_bw_cap_enum_uint8 dot11_vap_max_band_width;      /* 当前vap可用的最大带宽能力 */
111 } wlan_mib_dot11stationconfigentry_stru; /* Dot11StationConfigEntry */
112 
113 /******************************************************************************/
114 /* dot11WEPDefaultKeys  TABLE - members of Dot11WEPDefaultKeysEntry           */
115 /******************************************************************************/
116 /* Conceptual table for WEP default keys. This table contains the four WEP    */
117 /* default secret key values corresponding to the four possible KeyID values. */
118 /* The WEP default secret keys are logically WRITE-ONLY. Attempts to read the */
119 /* entries in this table return unsuccessful status and values of null or 0.  */
120 /* The default value of each WEP default key is null.                         */
121 typedef struct {
122     osal_u8  dot11_wep_default_key_value[WLAN_MAX_WEP_STR_SIZE];    /* dot11WEPDefaultKeyValue WEPKeytype  */
123     osal_u8  rsv;
124 } wlan_mib_dot11wepdefaultkeysentry_stru;
125 
126 /******************************************************************************/
127 /* dot11RSNAConfig TABLE (RSNA and TSN) - members of dot11RSNAConfigEntry     */
128 /******************************************************************************/
129 /* An entry in the dot11RSNAConfigTable                                       */
130 typedef struct {
131     osal_u8             dot11_rsna_config_ptksa_replay_counters; /* Unsigned32, */
132     osal_u8             dot11_rsna_config_gtksa_replay_counters; /* Unsigned32, */
133     osal_u32            wpa_group_suite;
134     osal_u32            rsn_group_suite;
135     osal_u32            wpa_pair_suites[WLAN_PAIRWISE_CIPHER_SUITES];
136     osal_u32            wpa_akm_suites[WLAN_AUTHENTICATION_SUITES];
137     osal_u32            rsn_pair_suites[WLAN_PAIRWISE_CIPHER_SUITES];
138     osal_u32            rsn_akm_suites[WLAN_AUTHENTICATION_SUITES];
139     osal_u32            rsn_group_mgmt_suite;
140 } wlan_mib_dot11rsnaconfigentry_stru;
141 
142 /******************************************************************************/
143 /* dot11WEPKeyMappings  TABLE - members of Dot11WEPKeyMappingsEntry           */
144 /******************************************************************************/
145 /* Conceptual table for WEP Key Mappings. The MIB supports the ability to     */
146 /* share a separate WEP key for each RA/TA pair. The Key Mappings Table con-  */
147 /* tains zero or one entry for each MAC address and contains two fields for   */
148 /* each entry: WEPOn and the corresponding WEP key. The WEP key mappings are  */
149 /* logically WRITE-ONLY. Attempts to read the entries in this table return    */
150 /* unsuccessful status and values of null or 0. The default value for all     */
151 /* WEPOn fields is false                                                      */
152 /******************************************************************************/
153 /* dot11Privacy TABLE - members of Dot11PrivacyEntry                          */
154 /******************************************************************************/
155 /* Group containing attributes concerned with IEEE 802.11 Privacy. Created    */
156 /* as a table to allow multiple instantiations on an agent.                   */
157 typedef struct {
158     /* dot11PrivacyInvoked TruthValue */
159     oal_bool_enum_uint8 dot11_privacy_invoked                 : 1;
160     /* dot11RSNAActivated TruthValue */
161     oal_bool_enum_uint8 dot11_rsna_activated                  : 1;
162     /* dot11RSNAPreauthenticationActivated TruthValue */
163     oal_bool_enum_uint8 dot11_rsna_preauthentication_activated : 1;
164     /* dot11RSNAManagementFramerProtectionCapbility TruthValue  */
165     oal_bool_enum_uint8 dot11_rsnamfpc                       : 1;
166     /* dot11RSNAManagementFramerProtectionRequired TruthValue  */
167     oal_bool_enum_uint8 dot11_rsnamfpr                       : 1;
168     oal_bool_enum_uint8 en_resv                                : 3;
169     /* dot11WEPDefaultKeyID Unsigned8 */
170     osal_u8             dot11_wep_default_key_id;
171     osal_u8             reserve[2];
172     wlan_mib_dot11wepdefaultkeysentry_stru wlan_mib_wep_dflt_key[WLAN_NUM_DOT11WEPDEFAULTKEYVALUE];
173     wlan_mib_dot11rsnaconfigentry_stru     wlan_mib_rsna_cfg;
174 } wlan_mib_dot11privacyentry_stru;
175 
176 /**************************************************************************************/
177 /* dot11FastBSSTransitionConfig TABLE  - members of Dot11FastBSSTransitionConfigEntry */
178 /**************************************************************************************/
179 /* The table containing fast BSS transition configuration objects                     */
180 typedef struct {
181     oal_bool_enum_uint8 dot11_fast_bss_transition_activated  : 1; /* dot11FastBSSTransitionActivated TruthValue, */
182     oal_bool_enum_uint8 dot11_ft_over_ds_activated           : 1; /* dot11FTOverDSActivated TruthValue,          */
183     oal_bool_enum_uint8 dot11_ft_resource_request_supported  : 1; /* dot11FTResourceRequestSupported TruthValue, */
184     oal_bool_enum_uint8 en_resv                             : 5;
185 
186     osal_u8           resv;
187     osal_u16          dot11_ft_mobility_domain_id;      /* dot11FTMobilityDomainID OCTET STRING,SIZE(2) */
188 } wlan_mib_dot11fastbsstransitionconfigentry_stru;
189 
190 /**************************************************************************************/
191 /* dot11HTStationConfig TABLE  - members of Dot11HTStationConfigEntry                 */
192 /**************************************************************************************/
193 /* Station Configuration attributes. In tabular form to allow for multiple            */
194 /* instances on an agent.                                                             */
195 typedef struct {
196     oal_bool_enum_uint8 dot11_ht_control_field_supported             : 1; /* TruthValue, */
197     oal_bool_enum_uint8 dot11_rd_responder_option_implemented        : 1; /* TruthValue, */
198     oal_bool_enum_uint8 dot11_pco_option_implemented                : 1; /* TruthValue, */
199     oal_bool_enum_uint8 dot11_lsig_txop_protection_option_implemented : 1; /* TruthValue, */
200     oal_bool_enum_uint8 dot11_high_throughput_option_implemented     : 1; /* TruthValue, */
201     osal_u8             dot11_minimum_mpdu_start_spacing             : 3; /* Unsigned32, */
202     osal_u8             resv[3];
203 
204     wlan_mib_max_amsdu_lenth_enum_uint16 dot11_max_amsdu_length;    /* INTEGER, */
205     wlan_mib_mimo_power_save_enum_uint8 dot11_mimo_power_save;      /* INTEGER, */
206     wlan_mib_mcs_feedback_opt_implt_enum_uint8 dot11_mcs_feedback_option_implemented; /* INTEGER, */
207 
208     osal_u32          dot11_max_rx_ampdu_factor;  /* Unsigned32, */
209     osal_u32          dot11_transition_time;    /* Unsigned32, */
210 } wlan_mib_dot11htstationconfigentry_stru;
211 
212 /**************************************************************************************/
213 /* dot11WirelessMgmtOptions TABLE  - members of Dot11WirelessMgmtOptionsEntry         */
214 /**************************************************************************************/
215 /* Wireless Management attributes. In tabular form to allow for multiple      */
216 /* instances on an agent. This table only applies to the interface if         */
217 /* dot11WirelessManagementImplemented is set to true in the                   */
218 /* dot11StationConfigTable. Otherwise this table should be ignored.           */
219 /* For all Wireless Management features, an Activated MIB variable is used    */
220 /* to activate/enable or deactivate/disable the corresponding feature.        */
221 /* An Implemented MIB variable is used for an optional feature to indicate    */
222 /* whether the feature is implemented. A mandatory feature does not have a    */
223 /* corresponding Implemented MIB variable. It is possible for there to be     */
224 /* multiple IEEE 802.11 interfaces on one agent, each with its unique MAC     */
225 /* address. The relationship between an IEEE 802.11 interface and an          */
226 /* interface in the context of the Internet standard MIB is one-to-one.       */
227 /* As such, the value of an ifIndex object instance can be directly used      */
228 /* to identify corresponding instances of the objects defined herein.         */
229 /* ifIndex - Each IEEE 802.11 interface is represented by an ifEntry.         */
230 /* Interface tables in this MIB module are indexed by ifIndex.                */
231 typedef struct {
232     oal_bool_enum_uint8 dot11_mgmt_option_multi_bssid_implemented;           /* TruthValue, */
233     oal_bool_enum_uint8 dot11_mgmt_option_bss_transition_implemented;        /* TruthValue, */
234     oal_bool_enum_uint8 dot11_mgmt_option_bss_transition_activated;          /* TruthValue, */
235     oal_bool_enum_uint8 dot11_fine_timing_msmt_init_activated;               /* TruthValue, */
236     oal_bool_enum_uint8 dot11_fine_timing_msmt_resp_activated;               /* TruthValue, */
237     oal_bool_enum_uint8 dot11_rm_fine_timing_msmt_range_rep_activated;         /* TruthValue, */
238     osal_u8 resv[2];
239 } wlan_mib_dot11wirelessmgmtoptionsentry_stru;
240 
241 /****************************************************************************/
242 /* dot11VHTStationConfig TABLE  - members of Dot11VHTStationConfigEntry */
243 /****************************************************************************/
244 /* Station Configuration attributes. In tabular form to allow for multiple   */
245 /* instances on an agent. */
246 typedef struct {
247     osal_u32            dot11_max_mpdu_length;                         /* INTEGER, */
248     osal_u32            dot11_vht_max_rx_ampdu_factor;                   /* Unsigned32, */
249     osal_u32            dot11_vht_rx_highest_data_rate_supported;         /* Unsigned32, */
250     osal_u32            dot11_vht_tx_highest_data_rate_supported;         /* Unsigned32, */
251     osal_u16            dot11_vht_tx_mcs_map;                           /* OCTET STRING, */
252     osal_u16            dot11_vht_rx_mcs_map;                           /* OCTET STRING, */
253     oal_bool_enum_uint8 dot11_vht_control_field_supported;              /* TruthValue, */
254     oal_bool_enum_uint8 dot11_vhttxop_power_save_option_implemented;     /* TruthValue, */
255     oal_bool_enum_uint8 dot11_vht_option_implemented;                  /* TruthValue */
256     oal_bool_enum_uint8 dot11_operating_mode_notification_implemented;  /* TruthValue */
257 } wlan_mib_dot11vhtstationconfigentry_stru;
258 
259 #ifdef _PRE_WLAN_FEATURE_11AX
260 typedef struct {
261     osal_u32 dot11_txop_duration_rts_threshold; /* dot11TXOPDurationRTSThreshold Unsigned32 */
262     osal_u32 dot11_he_tx_mcs_map; /* dot11HETxMCSMap OCTET STRING, */
263     osal_u32 dot11_he_rx_mcs_map; /* dot11HERxMCSMap OCTET STRING, */
264 
265     osal_u8  dot11_trigger_mac_padding_duration;
266     osal_u8  dot11_max_ampdu_length;
267 
268     osal_u8  dot11_he_option_implemented         : 1; /* dot11HEOptionImplemented TruthValue */
269     osal_u8  dot11_heht_control_field_supported   : 1; /* dot11_heht_control_field_supported TruthValue */
270     osal_u8  dot11_twt_option_activated          : 1; /* dot11TWTOptionActivated TruthValue */
271     osal_u8  dot11_trs_option_implemented        : 1; /* dot11TRSOptionImplemented TruthValue */
272     osal_u8  dot11_he_psr_option_implemented     : 1; /* dot11HEPSROptionImplemented TruthValue */
273     osal_u8  dot11_he_bqr_control_implemented    : 1; /* dot11HEBQRControlImplemented TruthValue */
274     osal_u8  dot11_support_response_nfrp_trigger : 1;
275     osal_u8  dot11_he_ba_bitmap_support_32bit    : 1;
276 
277     osal_u8  dot11_he_mtid_aggregation_rx_support : 3;
278     osal_u8  dot11_he_bsr_control_implemented     : 1; /* dot11HEBSRControlImplemented TruthValue */
279     osal_u8  dot11_ht_vht_trigger_option_implemented : 1; /* dot11HTVHTTriggerOptionImplemented TruthValue */
280     osal_u8  dot11_he_oper_om_implemented         : 1; /* dot11HEOperationModeControlImplemented TruthValue */
281     osal_u8  resv                                 : 2; /* resv 2 bits */
282 } wlan_mib_dot11hestationconfigentry_stru;
283 
284 typedef struct {
285     oal_bool_enum_uint8   dot11_he_dual_band_support;
286     oal_bool_enum_uint8   dot11_heldpc_coding_in_payload;
287     oal_bool_enum_uint8   dot11_su_beamformer;
288     oal_bool_enum_uint8   dot11_su_beamformee;
289     oal_bool_enum_uint8   dot11_mu_beamformer;
290     oal_bool_enum_uint8   dot11_hestbc_rx_below_80mhz;
291     oal_bool_enum_uint8   dot11_ppe_thresholds_required;
292     osal_u32 dot11_he_num_sounding_dims_below_80mhz; /* dot11HENumberSoundingDimensionsLessThanOrEqualTo80 Unsigned32 */
293     osal_u8 dot11_he_ng16_mufeedback_support : 1; /* dot11HENG16MUFeedbackSupport TruthValue */
294     osal_u8 dot11_he_codebooksize_mufeedback_support : 1; /* dot11HECodebookSizePhi7Psi5MUFeedbackSupport TruthValue */
295     osal_u8 dot11_he_partial_bw_dlmumimo_implemented : 1; /* dot11HEPartialBWDLMUMIMOImplemented TruthValue */
296     osal_u8 resv : 5; /* 1个字节还剩余 5 比特 */
297     osal_u8 resv1[3]; /* 填充3字节用于对齐 */
298 } wlan_mid_dot11hephycapability_stru;
299 
300 typedef struct {
301     oal_bool_enum_uint8   dot11_ppe_thresholds_required;
302     osal_u8               rsv[3];
303 } wlan_mid_dot11hephycapability_rom_stru;
304 
305 typedef struct {
306     osal_u32   dot11_he_bss_color         : 6;
307     osal_u32   dot11_he_partial_bss_color : 1;
308     osal_u32   dot11_he_bss_color_disable : 1;
309     osal_u32   rsv                        : 24;
310 } wlan_mid_dot11heoper_stru;
311 #endif
312 
313 /****************************************************************************************/
314 /*          Start of dot11mac OBJECT IDENTIFIER ::= { ieee802dot11 2 }                  */
315 /*              --  MAC GROUPS                                                          */
316 /*              --  dot11OperationTable ::= { dot11mac 1 }                              */
317 /*              --  dot11CountersTable ::= { dot11mac 2 }                               */
318 /*              --  dot11GroupAddressesTable ::= { dot11mac 3 }                         */
319 /*              --  dot11EDCATable ::= { dot11mac 4 }                                   */
320 /*              --  dot11QAPEDCATable ::= { dot11mac 5 }                                */
321 /*              --  dot11QosCountersTable ::= { dot11mac 6 }                            */
322 /*              --  dot11ResourceInfoTable    ::= { dot11mac 7 }                        */
323 /****************************************************************************************/
324 /****************************************************************************************/
325 /* dot11OperationTable OBJECT-TYPE                                                      */
326 /* SYNTAX SEQUENCE OF Dot11OperationEntry                                               */
327 /* MAX-ACCESS not-accessible                                                            */
328 /* STATUS current                                                                       */
329 /* DESCRIPTION                                                                          */
330 /*      "Group contains MAC attributes pertaining to the operation of the MAC.          */
331 /*      This has been implemented as a table in order to allow for multiple             */
332 /*      instantiations on an agent."                                                    */
333 /* ::= { dot11mac 1 }                                                                   */
334 /****************************************************************************************/
335 typedef struct {
336     oal_bool_enum_uint8 dot11_rifs_mode                            : 1; /* TruthValue */
337     oal_bool_enum_uint8 dot11_dual_cts_protection                   : 1; /* TruthValue */
338     oal_bool_enum_uint8 dot11_lsigtxop_full_protection_activated     : 1; /* TruthValue */
339     oal_bool_enum_uint8 dot11_non_gf_entities_present                : 1; /* TruthValue */
340     oal_bool_enum_uint8 dot11_pco_activated                        : 1; /* TruthValue */
341     oal_bool_enum_uint8 dot11_40mhz_intolerant                  : 1; /* TruthValue */
342     oal_bool_enum_uint8 dot112040_bss_coexistence_management_support : 1; /* TruthValue */
343     oal_bool_enum_uint8 en_resv                                     : 1;
344 
345     wlan_mib_ht_protection_enum_uint8   dot11_ht_protection;            /* INTEGER */
346     osal_u8   resv[2];
347     osal_u32  dot11_rts_threshold;                                      /* Unsigned32 */
348     osal_u32  dot11_fragmentation_threshold;                            /* Unsigned32 */
349     osal_u32  dot11_bss_width_trigger_scan_interval;                       /* Unsigned32 */
350     osal_u32  dot11_bss_width_channel_transition_delay_factor;              /* Unsigned32 */
351     osal_u32  dot11_obss_scan_passive_dwell;                              /* Unsigned32 */
352     osal_u32  dot11_obss_scan_active_dwell;                               /* Unsigned32 */
353     osal_u32  dot11_obss_scan_passive_total_per_channel;                    /* Unsigned32 */
354     osal_u32  dot11_obss_scan_active_total_per_channel;                     /* Unsigned32 */
355     osal_u32  dot11_obss_scan_activity_threshold;                         /* Unsigned32 */
356 } wlan_mib_dot11operationentry_stru;
357 
358 /****************************************************************************************/
359 /* dot11EDCATable OBJECT-TYPE                                                           */
360 /* SYNTAX SEQUENCE OF Dot11EDCAEntry                                                    */
361 /* MAX-ACCESS not-accessible                                                            */
362 /* STATUS current                                                                       */
363 /* DESCRIPTION                                                                          */
364 /*      "Conceptual table for EDCA default parameter values at a non-AP STA. This       */
365 /*      table contains the four entries of the EDCA parameters corresponding to         */
366 /*      four possible ACs. Index 1 corresponds to AC_BK, index 2 to AC_BE, index 3      */
367 /*      to AC_VI, and index 4 to AC_VO."                                                */
368 /*      REFERENCE                                                                       */
369 /*      "IEEE 802.11-<year>, 9.2.4.2"                                                   */
370 /* ::= { dot11mac 4 }                                                                   */
371 /****************************************************************************************/
372 typedef struct {
373     osal_u8   dot11_edca_table_index;                 /* dot11EDCATableIndex     Unsigned32 */
374     osal_u8   dot11_edca_table_c_wmin;                 /* dot11EDCATableCWmin Unsigned32 */
375     osal_u8   dot11_edca_table_c_wmax;                 /* dot11EDCATableCWmax Unsigned32 */
376     osal_u8   dot11_edca_table_aifsn;                 /* dot11EDCATableAIFSN Unsigned32 */
377     osal_u16  dot11_edca_table_txop_limit;             /* dot11EDCATableTXOPLimit Unsigned32 */
378     oal_bool_enum_uint8 dot11_edca_table_mandatory;     /* dot11EDCATableMandatory TruthValue */
379     osal_u8   resv;
380 } wlan_mib_dot11cfgedcaentry_stru;
381 /****************************************************************************************/
382 /* dot11QAPEDCATable OBJECT-TYPE                                                        */
383 /* SYNTAX SEQUENCE OF Dot11QAPEDCAEntry                                                 */
384 /* MAX-ACCESS not-accessible                                                            */
385 /* STATUS current                                                                       */
386 /* DESCRIPTION                                                                          */
387 /*      "Conceptual table for EDCA default parameter values at the AP. This table       */
388 /*      contains the four entries of the EDCA parameters corresponding to four          */
389 /*      possible ACs. Index 1 corresponds to AC_BK, index 2 to AC_BE, index 3 to        */
390 /*      AC_VI, and index 4 to AC_VO."                                                   */
391 /*      REFERENCE                                                                       */
392 /*      "IEEE 802.11-<year>, 9.19.2"                                                    */
393 /* ::= { dot11mac 5 }                                                                   */
394 /****************************************************************************************/
395 typedef struct {
396     osal_u8 dot11_qapedca_table_c_wmin;               /* dot11QAPEDCATableCWmin Unsigned32 */
397     osal_u8 dot11_qapedca_table_c_wmax;               /* dot11QAPEDCATableCWmax Unsigned32 */
398     osal_u8 dot11_qapedca_table_aifsn;               /* dot11QAPEDCATableAIFSN Unsigned32 */
399     oal_bool_enum_uint8 dot11_qapedca_table_mandatory;  /* dot11QAPEDCATableMandatory TruthValue */
400     osal_u16 dot11_qapedca_table_txop_limit;           /* dot11QAPEDCATableTXOPLimit Unsigned32 */
401     osal_u16 dot11_qapedca_table_msdu_lifetime;        /* dot11_qapedca_table_msdu_lifetime Unsigned32 */
402 } wlan_mib_dot11qapedcaentry_stru;
403 typedef struct {
404     wlan_mib_dot11cfgedcaentry_stru               wlan_mib_edca[WLAN_WME_AC_BUTT];
405     /* --  dot11QAPEDCATable ::= { dot11mac 5 } */
406     wlan_mib_dot11qapedcaentry_stru            wlan_mib_qap_edac[WLAN_WME_AC_BUTT];
407 } wlan_mib_dot11edcaentry_stru;
408 
409 /****************************************************************************************/
410 /* dot11SupportedMCSTxTable OBJECT-TYPE                                                 */
411 /* SYNTAX SEQUENCE OF Dot11SupportedMCSTxEntry                                          */
412 /* MAX-ACCESS not-accessible                                                            */
413 /* STATUS current                                                                       */
414 /* DESCRIPTION                                                                          */
415 /*      "he Transmit MCS supported by the PLCP and PMD, represented by a count          */
416 /*      from 1 to 127, subject to limitations of each individual PHY."                  */
417 /* ::= { dot11phy 16 }                                                                  */
418 /****************************************************************************************/
419 typedef struct {
420     osal_u8   dot11_supported_mcs_tx_value[WLAN_HT_MCS_BITMASK_LEN];  /* dot11SupportedMCSTxValue Unsigned32 */
421 } wlan_mib_dot11supportedmcstxentry_stru;
422 
423 /****************************************************************************************/
424 /* dot11SupportedMCSRxTable OBJECT-TYPE                                                 */
425 /* SYNTAX SEQUENCE OF Dot11SupportedMCSRxEntry                                          */
426 /* MAX-ACCESS not-accessible                                                            */
427 /* STATUS current                                                                       */
428 /* DESCRIPTION                                                                          */
429 /*      "The receive MCS supported by the PLCP and PMD, represented by a count          */
430 /*      from 1 to 127, subject to limitations of each individual PHY."                  */
431 /* ::= { dot11phy 17 }                                                                  */
432 /****************************************************************************************/
433 typedef struct {
434     osal_u8   dot11_supported_mcs_rx_value[WLAN_HT_MCS_BITMASK_LEN];   /* dot11SupportedMCSRxValue Unsigned32 */
435 } wlan_mib_dot11supportedmcsrxentry_stru;
436 
437 typedef struct {
438     wlan_mib_dot11supportedmcstxentry_stru     supported_mcstx;
439 
440     wlan_mib_dot11supportedmcsrxentry_stru     supported_mcsrx;
441 } wlan_mib_dot11supportedmcsentry_stru;
442 
443 /****************************************************************************************/
444 /* dot11PhyAntennaTable OBJECT-TYPE                                                     */
445 /* SYNTAX SEQUENCE OF Dot11PhyAntennaEntry                                              */
446 /* MAX-ACCESS not-accessible                                                            */
447 /* STATUS current                                                                       */
448 /* DESCRIPTION                                                                          */
449 /*      "Group of attributes for PhyAntenna. Implemented as a table indexed on          */
450 /*      ifIndex to allow for multiple instances on an agent."                           */
451 /* ::= { dot11phy 2}                                                                    */
452 /****************************************************************************************/
453 typedef struct {
454     oal_bool_enum_uint8 dot11_antenna_selection_option_implemented              : 1; /* TruthValue */
455     oal_bool_enum_uint8 dot11_transmit_explicit_csi_feedback_as_option_implemented : 1; /* TruthValue */
456     oal_bool_enum_uint8 dot11_transmit_indices_feedback_as_option_implemented     : 1; /* TruthValue */
457     oal_bool_enum_uint8 dot11_explicit_csi_feedback_as_option_implemented         : 1; /* TruthValue */
458     oal_bool_enum_uint8 dot11_receive_antenna_selection_option_implemented       : 1; /* TruthValue */
459     oal_bool_enum_uint8 dot11_transmit_sounding_ppdu_option_implemented          : 1; /* TruthValue */
460     oal_bool_enum_uint8 en_resv                                                : 2;
461 
462     oal_bool_enum_uint8 resv[3];
463 } wlan_mib_dot11phyantennaentry_stru;
464 
465 /****************************************************************************************/
466 /* dot11PhyHRDSSSTable OBJECT-TYPE                                                      */
467 /* SYNTAX SEQUENCE OF Dot11PhyHRDSSSEntry                                               */
468 /* MAX-ACCESS not-accessible                                                            */
469 /* STATUS current                                                                       */
470 /* DESCRIPTION                                                                          */
471 /*      "Entry of attributes for dot11PhyHRDSSSEntry. Implemented as a table            */
472 /*      indexed on ifIndex to allow for multiple instances on an Agent."                */
473 /* ::= { dot11phy 12 }                                                                  */
474 /****************************************************************************************/
475 typedef struct {
476     oal_bool_enum_uint8 dot11_short_preamble_option_implemented; /* dot11ShortPreambleOptionImplemented TruthValue */
477     oal_bool_enum_uint8 dot11_pbcc_option_implemented;          /* dot11PBCCOptionImplemented TruthValue */
478     oal_bool_enum_uint8 dot11_channel_agility_present;          /* dot11ChannelAgilityPresent TruthValue */
479 } wlan_mib_dot11phyhrdsssentry_stru;
480 
481 /****************************************************************************************/
482 /* dot11PhyERPTable OBJECT-TYPE                                                         */
483 /* SYNTAX SEQUENCE OF Dot11PhyERPEntry                                                  */
484 /* MAX-ACCESS not-accessible                                                            */
485 /* STATUS current                                                                       */
486 /* DESCRIPTION                                                                          */
487 /*      "Entry of attributes for dot11PhyERPEntry. Implemented as a table indexed       */
488 /*      on ifIndex to allow for multiple instances on an Agent."                        */
489 /* ::= { dot11phy 14 }                                                                  */
490 /****************************************************************************************/
491 typedef struct {
492     oal_bool_enum_uint8 dot11_dsssofdm_option_activated;        /* dot11DSSSOFDMOptionActivated TruthValue */
493     /* dot11ShortSlotTimeOptionImplemented TruthValue */
494     oal_bool_enum_uint8 dot11_short_slot_time_option_implemented;
495     oal_bool_enum_uint8 dot11_short_slot_time_option_activated;   /* dot11ShortSlotTimeOptionActivated TruthValue */
496 } wlan_mib_dot11phyerpentry_stru;
497 
498 /****************************************************************************************/
499 /* dot11PhyDSSSTable OBJECT-TYPE                                                        */
500 /* SYNTAX SEQUENCE OF Dot11PhyDSSSEntry                                                 */
501 /* MAX-ACCESS not-accessible                                                            */
502 /* STATUS current                                                                       */
503 /* DESCRIPTION                                                                          */
504 /*      "Entry of attributes for dot11PhyDSSSEntry. Implemented as a table indexed      */
505 /*      on ifIndex to allow for multiple instances on an Agent."                        */
506 /* ::= { dot11phy 5 }                                                                   */
507 /****************************************************************************************/
508 typedef struct {
509     wlan_mib_dot11phyhrdsssentry_stru          phy_hrdsss;
510     wlan_mib_dot11phyerpentry_stru             phy_erp;
511 } wlan_mib_dot11phydsssentry_stru;
512 
513 /****************************************************************************************/
514 /* dot11TransmitBeamformingConfigTable OBJECT-TYPE                                      */
515 /* SYNTAX SEQUENCE OF Dot11TransmitBeamformingConfigEntry                               */
516 /* MAX-ACCESS not-accessible                                                            */
517 /* STATUS current                                                                       */
518 /* DESCRIPTION                                                                          */
519 /*      "Entry of attributes for dot11TransmitBeamformingConfigTable. Implemented       */
520 /*      as a table indexed on ifIndex to allow for multiple instances on an             */
521 /*      Agent."                                                                         */
522 /* ::= { dot11phy 18 }                                                                  */
523 /****************************************************************************************/
524 typedef struct {
525     oal_bool_enum_uint8 dot11_receive_stagger_sounding_option_implemented                 : 1; /* TruthValue */
526     oal_bool_enum_uint8 dot11_transmit_stagger_sounding_option_implemented                : 1; /* TruthValue */
527     oal_bool_enum_uint8 dot11_receive_ndp_option_implemented                             : 1; /* TruthValue */
528     oal_bool_enum_uint8 dot11_transmit_ndp_option_implemented                            : 1; /* TruthValue */
529     oal_bool_enum_uint8 dot11_implicit_transmit_beamforming_option_implemented            : 1; /* TruthValue */
530     oal_bool_enum_uint8 dot11_explicit_csi_transmit_beamforming_option_implemented         : 1; /* TruthValue */
531     oal_bool_enum_uint8 dot11_explicit_non_compressed_beamforming_matrix_option_implemented : 1; /* TruthValue */
532     oal_bool_enum_uint8 en_resv                                                         : 1;
533 
534     oal_bool_enum_uint8 dot11_calibration_option_implemented                            : 2;   /* INTEGER */
535     oal_bool_enum_uint8 dot11_explicit_transmit_beamforming_csi_feedback_option_implemented : 2;   /* INTEGER */
536     oal_bool_enum_uint8 dot11_explicit_non_compressed_beamforming_feedback_option_implemented : 2; /* INTEGER */
537     oal_bool_enum_uint8 dot11_explicit_compressed_beamforming_feedback_option_implemented   : 2;  /* INTEGER */
538 
539     osal_u8          dot11_number_beam_forming_csi_support_antenna;                         /* Unsigned32 */
540     osal_u8          dot11_number_non_compressed_beamforming_matrix_support_antenna;         /* Unsigned32 */
541     osal_u8          dot11_number_compressed_beamforming_matrix_support_antenna;            /* Unsigned32 */
542 } wlan_mib_dot11transmitbeamformingconfigentry_stru;
543 /****************************************************************************************/
544 /* dot11PhyHTTable OBJECT-TYPE                                                          */
545 /* SYNTAX SEQUENCE OF Dot11PhyHTEntry                                                   */
546 /* MAX-ACCESS not-accessible                                                            */
547 /* STATUS current                                                                       */
548 /* DESCRIPTION                                                                          */
549 /*      "Entry of attributes for dot11PhyHTTable. Implemented as a table indexed        */
550 /*      on ifIndex to allow for multiple instances on an Agent."                        */
551 /* ::= { dot11phy 15 }                                                                  */
552 /****************************************************************************************/
553 typedef struct {
554     oal_bool_enum_uint8 dot11_2g_40mhz_operation_implemented      : 1; /* TruthValue */
555     oal_bool_enum_uint8 dot11_5g_40mhz_operation_implemented      : 1; /* TruthValue */
556     oal_bool_enum_uint8 dot11_ht_greenfield_option_implemented       : 1; /* TruthValue */
557     oal_bool_enum_uint8 dot11_short_gi_option_in_twenty_implemented    : 1; /* TruthValue */
558     oal_bool_enum_uint8 dot112_g_short_gi_option_in_forty_implemented   : 1; /* TruthValue */
559     oal_bool_enum_uint8 dot115_g_short_gi_option_in_forty_implemented   : 1; /* TruthValue */
560     oal_bool_enum_uint8 dot11_ldpc_coding_option_implemented         : 1; /* TruthValue */
561     oal_bool_enum_uint8 dot11_ldpc_coding_option_activated           : 1; /* TruthValue */
562 
563     oal_bool_enum_uint8 dot11_tx_stbc_option_implemented             : 1; /* TruthValue */
564     oal_bool_enum_uint8 dot11_tx_stbc_option_activated               : 1; /* TruthValue */
565     oal_bool_enum_uint8 dot11_rx_stbc_option_implemented             : 1; /* TruthValue */
566     oal_bool_enum_uint8 dot11_tx_mcs_set_defined                     : 1; /* TruthValue */
567     oal_bool_enum_uint8 dot11_tx_rx_mcs_set_not_equal                  : 1; /* TruthValue */
568     oal_bool_enum_uint8 dot11_tx_unequal_modulation_supported        : 1; /* TruthValue */
569     oal_bool_enum_uint8 en_resv                                     : 2;
570 
571     osal_u32            dot11_highest_supported_data_rate;                /* Unsigned32 */
572     osal_u32            dot11_tx_maximum_number_spatial_streams_supported;  /* Unsigned32 */
573 
574     wlan_mib_dot11transmitbeamformingconfigentry_stru  wlan_mib_txbf_config;
575 } wlan_mib_dot11phyhtentry_stru;
576 
577 /****************************************************************************************/
578 /* dot11VHTTransmitBeamformingConfigTable OBJECT-TYPE                                   */
579 /* SYNTAX SEQUENCE OF Dot11VHTTransmitBeamformingConfigEntry                            */
580 /* MAX-ACCESS not-accessible                                                            */
581 /* STATUS current                                                                       */
582 /* DESCRIPTION                                                                          */
583 /*      "Entry of attributes for dot11VHTTransmitBeamformingConfigTable. Imple-         */
584 /*      mented as a table indexed on ifIndex to allow for multiple instances on an      */
585 /*      Agent."                                                                         */
586 /*  ::= { dot11phy 24 }                                                                 */
587 /****************************************************************************************/
588 typedef struct {
589     /* dot11VHTSUBeamformeeOptionImplemented TruthValue */
590     oal_bool_enum_uint8 dot11_vhtsu_beamformee_option_implemented;
591     /* dot11VHTSUBeamformerOptionImplemented TruthValue */
592     oal_bool_enum_uint8 dot11_vhtsu_beamformer_option_implemented;
593     /* dot11VHTMUBeamformeeOptionImplemented TruthValue */
594     oal_bool_enum_uint8 dot11_vhtmu_beamformee_option_implemented;
595     /* dot11VHTMUBeamformerOptionImplemented TruthValue */
596     oal_bool_enum_uint8 dot11_vhtmu_beamformer_option_implemented;
597     osal_u8           dot11_vht_number_sounding_dimensions;        /* dot11VHTNumberSoundingDimensions  Unsigned32 */
598 } wlan_mib_dot11vhttransmitbeamformingconfigentry_stru;
599 
600 /****************************************************************************************/
601 /* dot11PhyVHTTable OBJECT-TYPE                                                         */
602 /* SYNTAX SEQUENCE OF Dot11PhyVHTEntry                                                  */
603 /* MAX-ACCESS not-accessible                                                            */
604 /* STATUS current                                                                       */
605 /*      DESCRIPTION                                                                     */
606 /*      "Entry of attributes for dot11PhyVHTTable. Implemented as a table indexed       */
607 /*      on ifIndex to allow for multiple instances on an Agent."                        */
608 /* ::= { dot11phy 23 }                                                                  */
609 /****************************************************************************************/
610 typedef struct {
611     wlan_mib_vht_supp_width_enum_uint8  dot11_vht_channel_width_option_implemented         : 2; /* INTEGER */
612     oal_bool_enum_uint8                 dot11_vht_short_gi_option_in80_implemented          : 1; /* TruthValue */
613     oal_bool_enum_uint8                 dot11_vht_short_gi_option_in_160_and_80p80_implemented : 1; /* TruthValue */
614     oal_bool_enum_uint8                 dot11_vhtldpc_coding_option_implemented           : 1; /* TruthValue */
615     oal_bool_enum_uint8                 dot11_vht_tx_stbc_option_implemented               : 1; /* TruthValue */
616     oal_bool_enum_uint8                 dot11_vht_rx_stbc_option_implemented               : 1; /* TruthValue */
617     osal_u8                           rev                                           : 1;
618 
619     osal_u8           resv[3];
620     wlan_mib_dot11vhttransmitbeamformingconfigentry_stru wlan_mib_vht_txbf_config;
621 } wlan_mib_dot11phyvhtentry_stru;
622 
623 typedef struct {
624     /***************************************************************************
625         dot11smt OBJECT IDENTIFIER ::= { ieee802dot11 1 }
626     ****************************************************************************/
627     /* --  dot11StationConfigTable ::= { dot11smt 1 } */
628     wlan_mib_dot11stationconfigentry_stru wlan_mib_sta_config;
629 
630     /* --  dot11PrivacyTable ::= { dot11smt 5 } */
631     wlan_mib_dot11privacyentry_stru wlan_mib_privacy;
632 
633     /* --  dot11FastBSSTransitionConfigTable ::= { dot11smt 15 } */
634     wlan_mib_dot11fastbsstransitionconfigentry_stru wlan_mib_fast_bss_trans_cfg;
635 
636     /* --  dot11HTStationConfigTable  ::= { dot11smt 17 } */
637     wlan_mib_dot11htstationconfigentry_stru wlan_mib_ht_sta_cfg;
638 
639     /* --  dot11WirelessMgmtOptionsTable ::= { dot11smt 18} */
640     wlan_mib_dot11wirelessmgmtoptionsentry_stru wlan_mib_wireless_mgmt_op;
641 
642     /* --  dot11VHTStationConfig ::= { dot11smt 31 } */
643     wlan_mib_dot11vhtstationconfigentry_stru    wlan_mib_vht_sta_config;
644 
645 #ifdef _PRE_WLAN_FEATURE_11AX
646     wlan_mib_dot11hestationconfigentry_stru     wlan_mib_he_sta_config;
647     wlan_mid_dot11hephycapability_stru          wlan_mib_he_phy_config;
648     wlan_mid_dot11heoper_stru                   wlan_mib_he_oper_config;
649 #endif
650     /***************************************************************************
651         dot11mac OBJECT IDENTIFIER ::= { ieee802dot11 2 }
652     ****************************************************************************/
653     /* --  dot11OperationTable ::= { dot11mac 1 } */
654     wlan_mib_dot11operationentry_stru          wlan_mib_operation;
655     /* --  dot11EDCATable ::= { dot11mac 4 } */
656     wlan_mib_dot11edcaentry_stru               wlan_mib_edca;
657     wlan_mib_dot11supportedmcsentry_stru       supported_mcs;
658 
659     /* --  dot11PhyAntennaTable ::= { dot11phy 2 } */
660     wlan_mib_dot11phyantennaentry_stru     wlan_mib_phy_antenna;
661 
662     /* --  dot11PhyDSSSTable ::= { dot11phy 5 } */
663     wlan_mib_dot11phydsssentry_stru        wlan_mib_phy_dsss;
664 
665     /* --  dot11PhyHTTable  ::= { dot11phy 15 } */
666     wlan_mib_dot11phyhtentry_stru   wlan_mib_phy_ht;
667 
668     /* -- dot11PhyVHTTable ::= { dot11phy 23 } (802.11 ac) */
669     wlan_mib_dot11phyvhtentry_stru  wlan_mib_phy_vht;
670 } wlan_mib_ieee802dot11_stru;
671 
672 #ifdef __cplusplus
673 #if __cplusplus
674 }
675 #endif
676 #endif
677 
678 #endif
679