WS63 SDK 文档 7021f4f@fbb_ws63
ws63 和 ws63e 解决方案的 SDK 文档
载入中...
搜索中...
未找到
hal_common_ops_device.h
浏览该文件的文档.
1/*
2 * Copyright (c) HiSilicon (Shanghai) Technologies Co., Ltd. 2022-2023. All rights reserved.
3 * Description: HAL Layer Specifications.
4 * Create: 2022-2-17
5 */
6
7#ifndef __HAL_COMMON_OPS_DEVICE_H__
8#define __HAL_COMMON_OPS_DEVICE_H__
9
10/*****************************************************************************
11 1 头文件包含
12*****************************************************************************/
13#include "wlan_types.h"
16
17#ifdef __cplusplus
18#if __cplusplus
19extern "C" {
20#endif
21#endif
22
23#define HAL_POW_CUSTOM_24G_HE40_RATE_NUM 3
24#define HAL_POW_CUSTOM_5G_HE20_RATE_NUM 3
25#define HAL_POW_CUSTOM_5G_HE40_RATE_NUM 3
26#define HAL_POW_CUSTOM_5G_HE80_RATE_NUM 3
27
28#define NUM_OF_NV_TOTAL_MAX_TXPOWER 124
29
30#define HAL_CUS_NUM_5G_BW 4 /* 定制化5g带宽数 */
31
32#define HAL_NUM_5G_160M_SIDE_BAND 2
33
34#define HAL_POW_MAX_CHAIN_NUM 2 /* 最大通道数 */
35
36#define HAL_2G_POW_UPC_RF_LUT_NUM 256 /* UPC在RF中的档位数目 8bit */
37#define HAL_5G_POW_UPC_RF_LUT_NUM 64
38
39#define HAL_POW_11B_LPF_BASE_IDX 1 /* 11B基准LPF Index */
40
41#define HAL_POW_5G_6P5MBPS_RATE_POW_IDX 12 /* 5G 6.5Mbps对应的功率表索引, ht20 mcs0 */
42
43
44/*****************************************************************************
45 3 枚举
46*****************************************************************************/
47
48/* 2.4GHz频段: 信道号对应的信道索引值 */
68
76
77/* RF测试用,用于指示配置TX描述符字段 */
86
87/* 0~3代表AC发送队列,4代表管理帧、控制帧发送队列 */
88#define HAL_TX_QUEUE_MGMT HAL_TX_QUEUE_HI
89
90/* HAL模块需要抛出的WLAN_CRX事件子类型的定义
91 说明:该枚举需要和dmac_wlan_crx_event_sub_type_enum_uint8枚举一一对应 */
92typedef enum {
93 HAL_WLAN_CRX_EVENT_SUB_TYPE_RX, /* WLAN CRX 流程 */
94
95#ifdef _PRE_WLAN_FEATURE_FTM
96 HAL_EVENT_DMAC_MISC_FTM_ACK_COMPLETE, /* FTM ACK发送完成中断 */
97#endif
99 HAL_WLAN_CRX_EVENT_SUB_RPT_TRIG_PARA, /* 收到Trig帧中断 */
103
110
111/* 功率模式 */
112typedef enum {
113 HAL_POW_MODE_MARGIN = 0, /* 有余量模式: 默认 */
114 HAL_POW_MODE_NO_MARGIN = 1, /* 没有余量模式 */
115
119
133
134#ifdef _PRE_WLAN_FEATURE_SMPS
135/* SMPS模式配置
136 00:SMPS_STATIC(始终单路接收)
137 01:SMPS_DYNAMIC
138 10:reserved
139 11:SMPS_DISABLE(始终多路接收) */
140typedef enum {
141 HAL_SMPS_MODE_STATIC = 0,
142 HAL_SMPS_MODE_DYNAMIC = 1,
143 HAL_SMPS_MODE_DISABLE = 3,
144
145 HAL_SMPS_MODE_BUTT
146} hal_smps_mode_enum;
147
148typedef osal_u8 hal_smps_mode_enum_uint8;
149#endif
150
151#ifdef _PRE_WLAN_FEATURE_DFS
152typedef enum {
153 HAL_RADAR_NOT_REPORT = 0,
154 HAL_RADAR_REPORT,
155} hal_radar_filter_enum;
156typedef osal_u8 hal_radar_filter_enum_uint8;
157#endif
158
159/*****************************************************************************
160 STRUCT定义
161*****************************************************************************/
162
163typedef struct {
164 /* PHY TX MODE 2 (第15行) */
165 osal_u8 tx_rts_antenna; /* 发送RTS使用的天线组合 */
166 osal_u8 rx_ctrl_antenna; /* 接收CTS/ACK/BA使用的天线组合 */
167 osal_u8 reserve1[1]; /* TX VAP index 不是算法填写,故在此也填0 */
168
169 /* 0代表允许TXOP POWER save,1代表不允许TXOP POWER save */
171
172 /* NAV保护enable字段,1代表Long nav保护,0代表non long nav保护 */
174
175 /* 这个字段暂时由软件填写,最终可能由算法填写,故先列出 */
178
179#define RADAR_INFO_FLAG_DUMMY 0x10
180
181/* 脉冲信息结构体 */
190
191#define MAX_RADAR_PULSE_NUM 32 /* 最大雷达脉冲数 */
192#define RADAR_TYPE_CHIRP 10 /* 芯片上报的chirp雷达类型标号 */
193#define RADAR_MIN_ETSI_CHIRP_PULSE_NUM 5 /* ETSI chirp最小脉冲个数 */
194
195/* 保存多个脉冲信息结构体 */
200
201/* 对DMAC SCAN模块提供的硬件雷达检测信息结构体 */
215
221
235
236
237#ifdef _PRE_WLAN_FEATURE_DFS
238typedef struct {
239 /* 误报新增过滤条件 */
240 osal_u8 fcc_chirp_duration_diff : 1;
241 osal_u8 fcc_chirp_pow_diff : 1;
242 osal_u8 fcc_type4_duration_diff : 1;
243 osal_u8 fcc_chirp_eq_duration_num : 1;
244 osal_u8 resv : 4;
245} hal_dfs_pulse_check_filter_stru;
246
247typedef struct {
248 /* normal pulse det */
249 osal_u8 irq_cnt;
250 osal_u8 radar_cnt;
251 osal_u8 irq_cnt_old;
252 osal_u8 timeout : 1;
253 osal_u8 timer_start : 1;
254 osal_u8 is_enabled : 1;
255 osal_u8 resv : 5;
256
257 osal_u32 period_cnt;
258 frw_timeout_stru timer;
259} hal_dfs_normal_pulse_det_stru;
260
261typedef struct {
262#ifdef _PRE_WLAN_FEATURE_DFS
263 osal_u8 chirp_enable : 1;
264 osal_u8 chirp_wow_wake_flag : 1; /* 在wow的gpio中断上半部标记,表示刚从wow唤醒 */
265 osal_u8 log_switch : 2;
266 osal_u8 radar_type : 3;
267 osal_u8 chirp_timeout : 1;
268
269 osal_u8 chirp_cnt;
270 osal_u8 chirp_cnt_total;
271 osal_u8 chirp_cnt_for_crazy_report_det;
272
273 osal_u32 last_timestamp_for_chirp_pulse;
274
275 frw_timeout_stru timer;
276 osal_u32 min_pri;
277
278 /* 误报过滤条件 */
279 hal_dfs_pulse_check_filter_stru dfs_pulse_check_filter;
280
281 /* crazy report det */
282 osal_u8 crazy_report_cnt : 1;
283 osal_u8 crazy_report_is_enabled : 1;
284 osal_u8 resv0 : 6;
285 osal_u8 resv1[2]; /* 2byte保留字段 */
286
287 frw_timeout_stru timer_crazy_report_det;
288 frw_timeout_stru timer_disable_chirp_det;
289
290 /* normal pulse det timer */
291 hal_dfs_normal_pulse_det_stru dfs_normal_pulse_det;
292
293#else
294 osal_u8 chirp_enable : 1;
295 osal_u8 chirp_wow_wake_flag : 1; /* 在wow的gpio中断上半部标记,表示刚从wow唤醒 */
296 osal_u8 resv : 6;
297 osal_u8 resv0[3]; /* 3byte保留字段 */
298#endif
299 osal_u32 chirp_time_threshold;
300 osal_u32 chirp_cnt_threshold;
301 osal_u32 time_threshold;
302 osal_u32 last_burst_timestamp;
303 osal_u32 last_burst_timestamp_for_chirp;
304} hal_dfs_radar_filter_stru;
305#endif
306
314
323
332
333#ifdef __cplusplus
334#if __cplusplus
335}
336#endif
337#endif
338
339#endif
hal_lpm_soc_set_enum
Definition hal_common_ops_device.h:120
@ HAL_LPM_SOC_PCIE_L1S
Definition hal_common_ops_device.h:128
@ HAL_LPM_SOC_PCIE_L1_PM
Definition hal_common_ops_device.h:125
@ HAL_LPM_SOC_ADC_FREQ
Definition hal_common_ops_device.h:127
@ HAL_LPM_SOC_SET_BUTT
Definition hal_common_ops_device.h:130
@ HAL_LPM_SOC_MEM_PRECHARGE
Definition hal_common_ops_device.h:123
@ HAL_LPM_SOC_PCIE_L0
Definition hal_common_ops_device.h:124
@ HAL_LPM_SOC_PCIE_RD_BYPASS
Definition hal_common_ops_device.h:122
@ HAL_LPM_SOC_BUS_GATING
Definition hal_common_ops_device.h:121
@ HAL_LPM_SOC_AUTOCG_ALL
Definition hal_common_ops_device.h:126
osal_u8 hal_oper_mode_enum_uint8
Definition hal_common_ops_device.h:75
hal_pow_mode_enum
Definition hal_common_ops_device.h:112
@ HAL_POW_MODE_BUTT
Definition hal_common_ops_device.h:116
@ HAL_POW_MODE_MARGIN
Definition hal_common_ops_device.h:113
@ HAL_POW_MODE_NO_MARGIN
Definition hal_common_ops_device.h:114
osal_u8 hal_wlan_crx_event_sub_type_enum_uint8
Definition hal_common_ops_device.h:102
osal_u32 hal_tx_status_enum_uint32
Definition hal_common_ops_device.h:234
hal_oper_mode_enum
Definition hal_common_ops_device.h:69
@ HAL_OPER_MODE_NORMAL
Definition hal_common_ops_device.h:70
@ HAL_OPER_MODE_HUT
Definition hal_common_ops_device.h:71
@ HAL_OPER_MODE_BUTT
Definition hal_common_ops_device.h:73
#define MAX_RADAR_PULSE_NUM
Definition hal_common_ops_device.h:191
hal_tx_comp_sub_type_enum
Definition hal_common_ops_device.h:104
@ HAL_TX_COMP_SUB_TYPE_AL_TX
Definition hal_common_ops_device.h:106
@ HAL_TX_COMP_SUB_TYPE_TX
Definition hal_common_ops_device.h:105
@ HAL_TX_COMP_SUB_TYPE_BUTT
Definition hal_common_ops_device.h:107
osal_u8 hal_rf_test_sect_enum_uint8
Definition hal_common_ops_device.h:85
hal_wlan_crx_event_sub_type_enum
Definition hal_common_ops_device.h:92
@ HAL_WLAN_CRX_EVENT_SUB_TYPE_BUTT
Definition hal_common_ops_device.h:100
@ HAL_WLAN_CRX_EVENT_SUB_TYPE_RX
Definition hal_common_ops_device.h:93
@ HAL_WLAN_CRX_EVENT_SUB_RPT_HE_ROM
Definition hal_common_ops_device.h:98
@ HAL_WLAN_CRX_EVENT_SUB_RPT_TRIG_PARA
Definition hal_common_ops_device.h:99
osal_u8 hal_tx_comp_sub_type_enum_uint8
Definition hal_common_ops_device.h:109
osal_u8 hal_pow_mode_enum_uint8
Definition hal_common_ops_device.h:118
osal_u8 hal_lpm_soc_set_enum_uint8
Definition hal_common_ops_device.h:132
hal_wow_para_set_enum
Definition hal_common_ops_device.h:222
@ HAL_WOW_PARA_NULLDATA_AWAKE
Definition hal_common_ops_device.h:226
@ HAL_WOW_PARA_AP0_PROBE_RESP
Definition hal_common_ops_device.h:227
@ HAL_WOW_PARA_BUTT
Definition hal_common_ops_device.h:232
@ HAL_WOW_PARA_NULLDATA_INTERVAL
Definition hal_common_ops_device.h:225
@ HAL_WOW_PARA_EN
Definition hal_common_ops_device.h:223
@ HAL_WOW_PARA_AP0_IS_FAKE_VAP
Definition hal_common_ops_device.h:229
@ HAL_WOW_PARA_NULLDATA
Definition hal_common_ops_device.h:224
@ HAL_WOW_PARA_AP1_IS_FAKE_VAP
Definition hal_common_ops_device.h:230
@ HAL_WOW_PARA_AP1_PROBE_RESP
Definition hal_common_ops_device.h:228
hal_rf_test_sect_enum
Definition hal_common_ops_device.h:78
@ HAL_RF_TEST_BAND_WIDTH
Definition hal_common_ops_device.h:80
@ HAL_RF_TEST_CHAN_CODE
Definition hal_common_ops_device.h:81
@ HAL_RF_TEST_BUTT
Definition hal_common_ops_device.h:83
@ HAL_RF_TEST_POWER
Definition hal_common_ops_device.h:82
@ HAL_RF_TEST_DATA_RATE_ZERO
Definition hal_common_ops_device.h:79
hal_channel_freq_2g_enum
Definition hal_common_ops_device.h:49
@ HAL_2G_CHANNEL13
Definition hal_common_ops_device.h:62
@ HAL_CHANNEL_FREQ_2G_BUTT
Definition hal_common_ops_device.h:65
@ HAL_2G_CHANNEL5
Definition hal_common_ops_device.h:54
@ HAL_2G_CHANNEL1
Definition hal_common_ops_device.h:50
@ HAL_2G_CHANNEL14
Definition hal_common_ops_device.h:63
@ HAL_2G_CHANNEL2
Definition hal_common_ops_device.h:51
@ HAL_2G_CHANNEL3
Definition hal_common_ops_device.h:52
@ HAL_2G_CHANNEL6
Definition hal_common_ops_device.h:55
@ HAL_2G_CHANNEL7
Definition hal_common_ops_device.h:56
@ HAL_2G_CHANNEL11
Definition hal_common_ops_device.h:60
@ HAL_2G_CHANNEL12
Definition hal_common_ops_device.h:61
@ HAL_2G_CHANNEL4
Definition hal_common_ops_device.h:53
@ HAL_2G_CHANNEL10
Definition hal_common_ops_device.h:59
@ HAL_2G_CHANNEL8
Definition hal_common_ops_device.h:57
@ HAL_2G_CHANNEL9
Definition hal_common_ops_device.h:58
osal_u8 hal_channel_freq_2g_enum_uint8
Definition hal_common_ops_device.h:67
osal_u8 resv1
Definition oal_net.h:1
osal_u8 oal_bool_enum_uint8
Definition oal_types_device_rom.h:45
unsigned char osal_u8
Definition osal_types.h:11
signed char osal_s8
Definition osal_types.h:17
unsigned int osal_u32
Definition osal_types.h:13
unsigned short osal_u16
Definition osal_types.h:12
Definition frw_ext_common_rom.h:20
Definition hal_common_ops_device.h:307
oal_bool_enum_uint8 compatibility_stat
Definition hal_common_ops_device.h:311
osal_u16 rx_rate_stat_count
Definition hal_common_ops_device.h:309
osal_u32 rx_rate
Definition hal_common_ops_device.h:308
oal_bool_enum_uint8 compatibility_enable
Definition hal_common_ops_device.h:310
Definition hal_common_ops_device.h:324
osal_u8 pga_unit_deta_two
Definition hal_common_ops_device.h:330
osal_u8 pga_unit_deta_one
Definition hal_common_ops_device.h:329
osal_u8 cali_gear
Definition hal_common_ops_device.h:325
osal_u8 ant
Definition hal_common_ops_device.h:328
osal_u8 cali_data
Definition hal_common_ops_device.h:326
osal_s8 cali_offset
Definition hal_common_ops_device.h:327
Definition hal_common_ops_device.h:182
osal_u16 max_fft
Definition hal_common_ops_device.h:186
osal_u8 type
Definition hal_common_ops_device.h:187
osal_u16 duration
Definition hal_common_ops_device.h:184
osal_u16 power
Definition hal_common_ops_device.h:185
osal_u32 timestamp
Definition hal_common_ops_device.h:183
Definition hal_common_ops_device.h:202
osal_u8 resv
Definition hal_common_ops_device.h:213
osal_u8 channel_num
Definition hal_common_ops_device.h:210
osal_u8 working_bw
Definition hal_common_ops_device.h:211
osal_u8 radar_type
Definition hal_common_ops_device.h:206
osal_u8 band
Definition hal_common_ops_device.h:209
osal_u8 radar_bw
Definition hal_common_ops_device.h:208
osal_u8 radar_freq_offset
Definition hal_common_ops_device.h:207
osal_u8 flag
Definition hal_common_ops_device.h:212
Definition hal_common_ops_device.h:216
osal_u32 reg_ch_info
Definition hal_common_ops_device.h:219
osal_u32 reg_band_info
Definition hal_common_ops_device.h:217
osal_u32 reg_bw_info
Definition hal_common_ops_device.h:218
Definition hal_common_ops_device.h:196
osal_u32 pulse_cnt
Definition hal_common_ops_device.h:198
Definition hal_common_ops_device.h:163
osal_u8 txop_ps_not_allowed
Definition hal_common_ops_device.h:170
osal_u8 tx_rts_antenna
Definition hal_common_ops_device.h:165
osal_u8 rx_ctrl_antenna
Definition hal_common_ops_device.h:166
osal_u8 group_id
Definition hal_common_ops_device.h:176
osal_u8 long_nav_enable
Definition hal_common_ops_device.h:173
Definition hal_common_ops_device.h:315
osal_u32 * cnt1
Definition hal_common_ops_device.h:316
osal_u32 * cnt2
Definition hal_common_ops_device.h:317
osal_u32 * cnt6
Definition hal_common_ops_device.h:321
osal_u32 * cnt3
Definition hal_common_ops_device.h:318
osal_u32 * cnt4
Definition hal_common_ops_device.h:319
osal_u32 * cnt5
Definition hal_common_ops_device.h:320
#define BIT1
Definition td_base.h:176
#define BIT3
Definition td_base.h:174
#define BIT2
Definition td_base.h:175
#define BIT7
Definition td_base.h:170
#define BIT4
Definition td_base.h:173
#define BIT6
Definition td_base.h:171
#define BIT0
Definition td_base.h:177
#define BIT5
Definition td_base.h:172
@ WLAN_BW_CAP_BUTT
Definition wlan_types.h:453
@ WLAN_PROTOCOL_BUTT
Definition wlan_types.h:486