• 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: wal_config.c 的头文件
15  * Create: 2012年11月6日
16  */
17 
18 #ifndef __WAL_CONFIG_H__
19 #define __WAL_CONFIG_H__
20 
21 #include "oal_ext_if.h"
22 #include "wlan_types_common.h"
23 #include "mac_vap_ext.h"
24 #include "frw_ext_if.h"
25 #include "osal_types.h"
26 
27 #ifdef __cplusplus
28 #if __cplusplus
29 extern "C" {
30 #endif
31 #endif
32 
33 /*****************************************************************************
34   1 其他头文件包含
35 *****************************************************************************/
36 
37 #undef  THIS_FILE_ID
38 #define THIS_FILE_ID OAM_FILE_ID_WAL_CONFIG_H
39 /*****************************************************************************
40   2 宏定义
41 *****************************************************************************/
42 typedef osal_u32  (*wal_config_get_func)(hmac_vap_stru *mac_vap, osal_u16 *pus_len, osal_u8 *param);
43 typedef osal_u32  (*wal_config_set_func)(hmac_vap_stru *mac_vap, osal_u16 len, osal_u8 *param);
44 
45 #define WAL_BCAST_MAC_ADDR       255
46 #define WAL_MAX_RATE_NUM        16
47 
48 
49 /*****************************************************************************
50   3 枚举定义
51 *****************************************************************************/
52 /* 速率集种类,常发使用 */
53 typedef enum {
54     WAL_RF_TEST_11B_LEGACY_RATES,
55     WAL_RF_TEST_20M_NORMAL_RATES,
56     WAL_RF_TEST_20M_SHORT_GI_RATES,
57     WAL_RF_TEST_40M_NORMAL_RATES,
58     WAL_RF_TEST_40M_SHORT_GI_RATES,
59 
60     WAL_RF_TEST_RATES_BUTT
61 } wal_rf_test_enum;
62 /*****************************************************************************
63   4 全局变量声明
64 *****************************************************************************/
65 
66 
67 /*****************************************************************************
68   5 消息头定义
69 *****************************************************************************/
70 
71 
72 /*****************************************************************************
73   6 消息定义
74 *****************************************************************************/
75 
76 
77 /*****************************************************************************
78   7 STRUCT定义
79 *****************************************************************************/
80 typedef struct {
81     hmac_vap_stru                *mac_vap;
82     osal_s8                     pc_param[4];      /* 查询或配置信息 */
83 }wal_event_stru;
84 
85 /* WID对应的操作 */
86 typedef struct {
87     wlan_cfgid_enum_uint16  cfgid;                /* wid枚举 */
88     oal_bool_enum_uint8     reset;              /* 是否复位 */
89     osal_u8               auc_resv[1];
90     wal_config_get_func     p_get_func;            /* get函数 */
91     wal_config_set_func     p_set_func;            /* set函数 */
92 }wal_wid_op_stru;
93 
94 /*****************************************************************************
95   8 UNION定义
96 *****************************************************************************/
97 
98 
99 /*****************************************************************************
100   9 宏定义
101 *****************************************************************************/
102 
103 /*****************************************************************************
104   10 函数声明
105 *****************************************************************************/
106 osal_void wal_cfg_init(osal_void);
107 
108 #ifdef _PRE_SUPPORT_ACS
109 extern osal_u32  wal_acs_netlink_recv_handle(frw_event_mem_stru *event_mem);
110 #endif
111 extern osal_u32  wal_config_get_wmm_params_etc(oal_net_device_stru *net_dev, osal_u8 *param);
112 
113 extern osal_u32 hmac_config_send_event_etc(hmac_vap_stru *mac_vap,
114     wlan_cfgid_enum_uint16 cfg_id, osal_u16 len,
115     osal_u8 *param);
116 extern osal_u32 wal_send_cali_data_etc(oal_net_device_stru *net_dev);
117 
118 #ifdef _PRE_WLAN_FEATURE_DFS
119 extern osal_u32  wal_config_get_dfs_chn_status(oal_net_device_stru *net_dev, osal_u8 *param);
120 #endif
121 #ifdef __cplusplus
122 #if __cplusplus
123         }
124 #endif
125 #endif
126 
127 #endif /* end of wal_config.h */
128