WS63 SDK 文档 7021f4f@fbb_ws63
ws63 和 ws63e 解决方案的 SDK 文档
载入中...
搜索中...
未找到
hal_ops_common_rom.h
浏览该文件的文档.
1/*
2 * Copyright (c) HiSilicon (Shanghai) Technologies Co., Ltd. 2020-2022. All rights reserved.
3 * Description: HAL Layer Specifications.
4 */
5
6#ifndef __HAL_OPS_COMMON_ROM_H__
7#define __HAL_OPS_COMMON_ROM_H__
8
9/*****************************************************************************
10 1 头文件包含
11*****************************************************************************/
12#include "frw_list_rom.h"
13#include "frw_util_common_rom.h"
14#include "frw_ext_common_rom.h"
16#include "wlan_types.h"
17#include "wlan_types_base_rom.h"
18#include "wlan_custom_type.h"
19#include "oal_fsm.h"
22
23#ifdef __cplusplus
24#if __cplusplus
25extern "C" {
26#endif
27#endif
28
29#define INI_SUCC (0)
30#define INI_FAILED (-1)
31
32/*****************************************************************************
33 加密相关枚举定义
34*****************************************************************************/
35typedef struct {
38 osal_u16 protect_coex_pri : 2; /* btcoex下使用,one pkt发送优先级 */
42
45 osal_u16 duration; /* 单位 us */
47
48 osal_u16 wait_timeout; /* 软件定时器超时时间 */
49 osal_u8 rsv[2]; /* 保留2字节对齐 */
50 osal_u8 protect_frame[24]; // 24 mac_vap_ext hmac_only
52
53typedef struct {
55 osal_u8 vap_id; /* hal vap id */
56 osal_u8 status; /* 0:成功 1:接收响应帧失败 2:接收响应帧超时 3:异常结束 */
57 osal_u8 timeout; /* 最后一次是否发送超时 */
58 osal_u8 tx_cnt; /* 发送次数 */
60 osal_u16 tx_time; /* 硬件发送时间 */
62
63/*****************************************************************************
64 结构名 : hmac_tx_dscr_queue_header_stru
65 结构说明: 发送描述符队列头的结构体
66*****************************************************************************/
67typedef struct {
68 struct osal_list_head header; /* 发送描述符队列头结点 */
69 hal_dscr_queue_status_enum_uint8 queue_status; /* 发送描述符队列状态 */
70 osal_u8 ppdu_cnt; /* 发送描述符队列中元素的个数 */
71 osal_u8 mpdu_cnt; /* 发送描述符队列中mpdu总数,聚合场景,多个mpdu组成一个ppdu */
72 osal_u8 auc_resv[1]; /* 保留2字节对齐 */
73#ifdef _PRE_WLAN_DFR_STAT
74 osal_u32 enqueue_total_cnt; /* 统计周期内入队的数量 */
75#endif
77/*****************************************************************************/
78/*****************************************************************************/
79/* hh503 产品宏定义、枚举 */
80/*****************************************************************************/
81/*****************************************************************************/
82/*****************************************************************************
83 2 宏定义
84*****************************************************************************/
85#define hal_public_hook_func(_func) hh503##_func
86
87#define HAL_COEX_SW_IRQ_BT BIT0
88/*****************************************************************************
89 3 枚举
90*****************************************************************************/
91/* 算法描述符中RTS开关枚举 */
99
100/*****************************************************************************/
101/* 公共宏定义、枚举、结构体 */
102/*****************************************************************************/
103#define hal_pow_lpf_base_idx(_en_band) (((_en_band) == WLAN_BAND_2G) ? HAL_POW_2G_LPF_BASE_IDX : \
104 HAL_POW_5G_LPF_BASE_IDX) /* 基准LPF Index */
105#define hal_pow_dac_base_idx(_en_band) (((_en_band) == WLAN_BAND_2G) ? HAL_POW_2G_DAC_BASE_IDX : \
106 HAL_POW_5G_DAC_BASE_IDX) /* 基准DAC Index */
107
108/* Bit[22:22]: DPD enable; Bit[21:12]: delt dbb scaling; Bit[11:10]: DAC gain; Bit[9:8]: PA;
109 Bit[7:5]: LPF gain ; Bit[4:4]: UPC gain ; Bit[3:2]: CFR index; Bit[1:0]: dpd_tpc_lv */
110#define hal_pow_code_comb(_en_dpd_enable, _uc_upc_idx, _uc_pa_idx, _uc_dac_idx, _uc_lpf_idx, \
111 _uc_delta_dbb_scaling, _uc_dpd_tpc_lv, _uc_cfr_index) \
112 ((((osal_u32)(_uc_dpd_tpc_lv) & 0x3) | (((osal_u32)(_uc_cfr_index) & 0x3) << 2) | \
113 (((osal_u32)(_uc_upc_idx) & 0x1) << 4) | (((osal_u32)(_uc_lpf_idx) & 0x7) << 5) | \
114 (((osal_u32)(_uc_pa_idx) & 0x3) << 8) | (((osal_u32)(_uc_dac_idx) & 0x3) << 10) | \
115 (((osal_u32)(_uc_delta_dbb_scaling) & 0x3ff) << 12) | (((osal_u32)(_en_dpd_enable) & 0x1) << 22)) & 0x7fffff)
116
117#define hal_ini_pow_code(_en_band) (hal_pow_code_comb(OSAL_TRUE, HAL_POW_UPC_LOW_START_IDX, HAL_POW_PA_BASE_IDX, \
118 hal_pow_dac_base_idx(_en_band), hal_pow_lpf_base_idx(_en_band), HAL_POW_DELTA_DBB_SCAL_BASE_IDX, \
119 HAL_POW_DPD_TPC_BASE_IDX, HAL_POW_CFR_BASE_IDX))
120
121#define hal_pow_fill_tx_four_same_code(_uc_code) \
122 ((((osal_u32)(_uc_code)) << 24) | (((osal_u32)(_uc_code)) << 16) | \
123 (((osal_u32)(_uc_code)) << 8) | ((osal_u32)(_uc_code)))
124
125#define hal_pow_fill_upc_data_reg(_uc_data1, _uc_data2, _uc_data3, _uc_data4) \
126 (((osal_u32)((_uc_data1)<<(osal_u32)24)) | ((osal_u32)((_uc_data2)<<(osal_u32)16)) | \
127 ((osal_u32)(_uc_data3)<<(osal_u32)8) | (_uc_data4))
128
129#define hal_abs(_a) (((_a) > 0) ? (_a) : (-(_a)))
130
131#define hal_pow_find_near_idx(_uc_data1, _uc_data2, _uc_idx1, _uc_idx2, _uc_input) \
132 ((hal_abs((_uc_data1) - (_uc_input))) > (hal_abs((_uc_data2)-(_uc_input))) ? (_uc_idx2) : (_uc_idx1))
133
134#define get_rssi_min(_c_rssi_ant0, _c_rssi_ant1) \
135 (((_c_rssi_ant0) == OAL_RSSI_INIT_VALUE) ? (_c_rssi_ant1) : \
136 ((_c_rssi_ant1) == OAL_RSSI_INIT_VALUE) ? (_c_rssi_ant0) : \
137 osal_min((_c_rssi_ant0), (_c_rssi_ant1)))
138
139#define get_rssi(_c_rssi_dbm, _c_rssi_ant0, _c_rssi_ant1) get_rssi_min(_c_rssi_ant0, _c_rssi_ant1)
140
141/* hal device下挂接收描述符控制相关宏定义 */
142#define get_dev_rx_dscr_q_empty(_pst_hal_dev, _uc_queue_id) \
143 (((alg_rx_dscr_ctl_alg_info_stru *)((_pst_hal_dev)->rx_dscr_ctl.rx_dscr_ctl_alg_info + \
144 (_uc_queue_id)))->rx_dscr_q_empty)
145#define get_dev_rx_dscr_max_used_cnt(_pst_hal_dev, _uc_queue_id) \
146 (((alg_rx_dscr_ctl_alg_info_stru *)((_pst_hal_dev)->rx_dscr_ctl.rx_dscr_ctl_alg_info + \
147 (_uc_queue_id)))->rx_max_dscr_used_cnt)
148#define get_dev_rx_dscr_event_cnt(_pst_hal_dev, _uc_queue_id) \
149 (((alg_rx_dscr_ctl_alg_info_stru *)((_pst_hal_dev)->rx_dscr_ctl.rx_dscr_ctl_alg_info + \
150 (_uc_queue_id)))->rx_event_cnt)
151#define get_dev_rx_dscr_event_pkts(_pst_hal_dev, _uc_queue_id) \
152 (((alg_rx_dscr_ctl_alg_info_stru *)((_pst_hal_dev)->rx_dscr_ctl.rx_dscr_ctl_alg_info + \
153 (_uc_queue_id)))->rx_event_pkts_sum)
154#define get_dev_rx_dscr_avrage_pkts(_pst_hal_dev, _uc_queue_id) \
155 ((get_dev_rx_dscr_event_pkts(_pst_hal_dev, _uc_queue_id)) / (get_dev_rx_dscr_event_cnt(_pst_hal_dev, _uc_queue_id)))
156#define get_dev_rx_dscr_avrg_pkts(_pst_hal_dev, _uc_queue_id) \
157 ((get_dev_rx_dscr_event_cnt(_pst_hal_dev, _uc_queue_id) == 0) ? 0 : \
158 (get_dev_rx_dscr_avrage_pkts(_pst_hal_dev, _uc_queue_id)))
159#define get_dev_rx_dscr_smooth_dscr_pkts(_pst_hal_dev, _uc_queue_id) \
160 (((alg_rx_dscr_ctl_alg_info_stru *)((_pst_hal_dev)->rx_dscr_ctl.rx_dscr_ctl_alg_info + \
161 (_uc_queue_id)))->rx_dscr_smooth_event_pkts)
162#define get_dev_rx_dscr_smooth_avr_dscr(_pst_hal_dev, _uc_queue_id) \
163 (((alg_rx_dscr_ctl_alg_info_stru *)((_pst_hal_dev)->rx_dscr_ctl.rx_dscr_ctl_alg_info + \
164 (_uc_queue_id)))->rx_dscr_smooth_avr_dscr)
165
166#define get_dev_max(_us_ualue, _us_thres) \
167 ((_us_ualue) = ((_us_ualue) < (_us_thres)) ? (_us_thres) : (_us_ualue))
168
169#define get_dev_rx_dscr_reset_static(_pst_hal_dev, _uc_queue_id) \
170 do { \
171 get_dev_rx_dscr_max_used_cnt(_pst_hal_dev, _uc_queue_id) = 0; \
172 get_dev_rx_dscr_event_cnt(_pst_hal_dev, _uc_queue_id) = 0; \
173 get_dev_rx_dscr_event_pkts(_pst_hal_dev, _uc_queue_id) = 0; \
174 } while (0)
175#define get_dev_rx_dscr_reset_smooth(_pst_hal_dev, _uc_queue_id) \
176 do { \
177 get_dev_rx_dscr_smooth_avr_dscr(_pst_hal_dev, _uc_queue_id) = 0; \
178 get_dev_rx_dscr_smooth_dscr_pkts(_pst_hal_dev, _uc_queue_id) = 0; \
179 } while (0)
180/* 获取tpc档位对应的目标功率增益 */
181#define hal_dev_get_idx_target_pow_gain(_pst_hal_dev, _uc_pow_idx, _en_freq_band) \
182 (((hal_to_dmac_device_stru *)(_pst_hal_dev))->tx_pwr_ctrl.tpc_lvl_vs_gain_ctrl->as_pow_level_table[(_uc_pow_idx)] \
183 [(_en_freq_band)])
184
185#define ops_min(a, b) (((a) < (b)) ? (a) : (b))
186
187/* 计算PAPA=5.5时,对应的功率补偿值 单位0.1dBm */
188/* 根据实验室测试数据,一次拟合得到计算功率偏差公式0.25+0.03*delt_power,推导对应6
189 M&MCS0有如下功率补偿值计算公式,小于-0.5dB时不需要补偿 */
190#define hal_dev_cfr_get_compsen_by_deltpow(_c_delt_pow) ((osal_u8)(((_c_delt_pow) < -5) ? 0 : \
191 (((3*(_c_delt_pow) + 25) + 5) / 10)))
192
193
194/* 检查是否为11b 1M速率 */
195#define hal_phy_11b_1m_rate(_a, _b) (((_a) == WLAN_11B_PHY_PROTOCOL_MODE) && ((_b) == 0))
196
197#ifdef _PRE_WLAN_FEATURE_NEGTIVE_DET
198/* 干扰检测模块PK模式探测阶段枚举 */
199typedef enum {
200 HAL_ALG_INTF_PKADJ_STAGE_INIT = 0, /* 用于统计跑流的初始干扰 */
201 HAL_ALG_INTF_PKADJ_STAGE_TXOP = 1,
202 HAL_ALG_INTF_PKADJ_STAGE_AIFSN = 2,
203 HAL_ALG_INTF_PKADJ_STAGE_CW = 3,
204
205 HAL_ALG_INTF_PK_STAGE_BUTT
206} hal_alg_intf_pk_stage_enum;
207typedef osal_u8 hal_alg_pk_intf_stage_enum_uint8;
208#endif
209
210/*****************************************************************************
211 7.1 基准发送描述符定义
212*****************************************************************************/
213typedef struct tag_hal_tx_dscr_stru {
215 osal_void *skb_start_addr; /* Sub MSDU 0 Skb Address */
216 osal_u16 original_mpdu_len; /* mpdu长度 含帧头 */
217 hal_tx_queue_type_enum_uint8 q_num; /* 发送队列队列号 */
218 osal_u8 is_retried : 1; /* 是不是重传包 */
219 osal_u8 is_ampdu : 1; /* 是不是ampdu */
220 osal_u8 is_rifs : 1; /* 是不是rifs发送 */
221 osal_u8 is_first : 1; /* 标志是否是第一个描述符 */
222 osal_u8 tid : 4; /* tid队列 */
225
226/*****************************************************************************
227 7.2 基准接收描述符定义
228*****************************************************************************/
229typedef struct tag_hal_rx_dscr_stru {
231 osal_void *skb_start_addr; /* 描述符中保存的netbuf的首地址 */
234
239
240typedef struct {
241 /* tx dscr中算法填写的参数 */
242 hal_tx_phy_mode_one_stru phy_info; /* 第13行(HY TX MODE 1) */
243 hal_tx_ctrl_desc_rate_stru tx_dsrc[HAL_TX_RATE_MAX_NUM]; /* 第14(PHY TX RATA 1) 19 20 21 行 */
244 hal_tx_txop_tpc_stru tpc; /* 第24 25 26 27行 */
250
251/*****************************************************************************
252 结构名 : hal_user_pow_info_stru
253 结构说明: HAL模块USER级别功率结构
254*****************************************************************************/
255typedef struct {
256 hal_rate_pow_code_gain_table_stru *rate_pow_table; /* EVM功率表单结构体指针 */
257 hal_tx_txop_alg_stru *txop_param; /* 用户速率描述符信息结构体 */
259
260/* Beacon帧发送参数 */
261typedef struct {
262 uintptr_t pkt_ptr; /* 64位OS上用osal_u32会导致pkt_ptr截断 用uintptr_t则不会 */
267
299
300/*****************************************************************************
301 结构名 : hal_tx_mpdu_stru
302 结构说明: DMAC模块MPDU发送控制结构
303*****************************************************************************/
304typedef struct {
305 /* 从11MAC帧头中获取 针对MPDU */
307 hal_tx_mpdu_mac_hdr_params_stru mpdu_mac_hdr; /* 第12 17行(PHY TX MODE 2) */
308 hal_tx_mpdu_address_params_stru mpdu_addr; /* 第18行(MAC TX MODE 2) */
311 osal_u16 mpdu_len; /* 发送帧的长度,包括head */
314
315/*****************************************************************************
316 结构名 : hal_rx_dscr_queue_header_stru
317 结构说明: 接收描述符队列头的结构体
318*****************************************************************************/
319typedef struct {
320 struct osal_list_head header; /* 发送描述符队列头结点 */
321 osal_u16 element_cnt; /* 接收描述符队列中元素的个数 */
322 hal_dscr_queue_status_enum_uint8 queue_status; /* 接收描述符队列的状态 */
323 osal_u8 available_cnt; /* 当前队列中硬件可用描述符个数 */
325
326/*****************************************************************************
327 结构名 : hal_cfg_rts_tx_param_stru
328 结构说明: RTS设置发送参数
329*****************************************************************************/
330typedef struct {
331 wlan_legacy_rate_value_enum_uint8 rate[HAL_TX_RATE_MAX_NUM]; /* 发送速率,单位mpbs */
332
333 /* 协议模式, 取值参见wlan_phy_protocol_enum_uint8 */
336 osal_u8 recv[3]; /* 保留3字节对齐 */
338
339/*****************************************************************************
340 7.7 对外部保留的设备级接口列表,建议外部不做直接调用,而是调用对应的内联函数
341*****************************************************************************/
342typedef osal_void (* p_hal_alg_isr_func)(osal_u8 vap_id, osal_void *p_hal_to_dmac_device);
343typedef osal_void (* p_hal_gap_isr_func)(osal_u8 vap_id, osal_void *p_hal_to_dmac_device);
344typedef osal_u32 (*p_tbtt_ap_isr_func)(osal_u8 mac_vap_id);
345
346/* 保存硬件上报接收中断信息结构 */
347typedef struct {
348 struct osal_list_head dlist_head;
349 osal_u32 *base_dscr; /* 本次中断描述符地址 */
350 osal_u16 dscr_num; /* 接收到的描述符的个数 */
351 osal_u8 channel_num; /* 本次中断时,所在的信道号 */
354
355typedef struct {
356 frw_timeout_stru tx_prot_timer; /* 检测无发送完成中断定时器 */
357 hal_dfr_timer_step_enum_uint8 tx_prot_timer_step; /* 超时标志,表明第几次超时 */
358 osal_u8 auc_resv[1];
359 osal_u16 tx_prot_time; /* 超时时间 */
361
362/*****************************************************************************
363 结构名 : hal_phy_pow_param_stru
364 结构说明: PHY 功率相关寄存器参数, 在2.4G/5G频点切换时使用
365*****************************************************************************/
385
386typedef struct {
387 oal_bool_enum_uint8 aen_dyn_cali_chain_comp_flag[WLAN_RF_CHANNEL_NUMS];
389 osal_u8 auc_resv[1];
391typedef struct hal_dyn_cali_val {
393 osal_u16 aus_cali_en_interval[WLAN_BAND_BUTT]; /* 两次动态校准间隔描述符个数 */
394
395 osal_s32 pdet_val; /* 上报pdet值 */
396
397 osal_u8 tpc_code; /* 上报tpc code */
398 osal_u8 pdet_chain : 4; /* 上报pdet的通道 */
399 osal_u8 protocol : 4; /* 校准帧的协议模式 wlan_phy_protocol_enum */
404
405typedef struct {
406 frw_timeout_stru scan_timer; /* 扫描定时器用于切换信道 */
407 mac_channel_stru home_channel; /* 记录home channel */
408
409 osal_u8 original_mac_addr[WLAN_MAC_ADDR_LEN]; /* 扫描开始前保存原始的MAC地址 */
411 osal_u8 scan_pause_bitmap; /* 扫描是否被暂停 */
412
413 osal_u8 start_chan_idx; /* 扫描起始idx */
414 osal_u8 scan_chan_idx; /* 当前扫描信道索引累加值 */
415 osal_u8 channel_nums; /* 此hal扫描的信道个数 */
416 osal_u8 scan_ap_num_in_2p4; /* 在2.4g上扫到ap的信道个数 */
417
418 osal_u8 last_channel_band; /* 上一个channel的频段 */
419
420 /* 记录当前信道的扫描次数,第一次发送广播ssid的probe req帧,后面发送指
421 定ssid的probe req帧 */
423 osal_u8 max_scan_count_per_channel; /* 每个信道的扫描次数 */
424
425 /* 间隔n个信道,切回工作信道工作一段时间 */
427
428 /* 扫描在某一信道停留此时间后,扫描结束, ms,必须配置为MAC负载统计周期的整数倍 */
430 osal_u16 work_time_on_home_channel; /* 背景扫描时,返回工作信道工作的时间 */
431
432 osal_u32 scan_timestamp; /* 记录最新一次扫描开始的时间 */
433
434 osal_u8 scan_ap_num_in_5p0; /* 在5g上扫到ap的信道个数 */
435 osal_u8 curr_scan_state : 2; /* 此hal扫描状态 */
436 osal_u8 scan_curr_chan_find_bss_flag : 1; /* 本信道是否扫到bss */
437
438 /* 背景扫描时,扫描完一个信道,判断是否需要切回工作信道工作 */
440 osal_u8 working_in_home_chan : 1; /* 是否工作在工作信道 */
441 osal_u8 scan_band : 2; /* 扫描的频段,支持fast scan使用 */
443 hal_scan_tx_dscr_dbg_ctl_enum_uint8 tx_dscr_debug_ctl; /* 控制扫描时打印部分tx dscr */
446
448
450 oal_bool_enum_uint8 is_scan_start);
451
455
456/* hal device状态机结构体 */
460 oal_fsm_stru oal_fsm; /* 状态机 */
461 osal_u8 is_fsm_attached; /* 状态机是否已经注册 */
463 osal_u8 wait_hw_txq_empty : 1; /* 标记是否等待硬件队列为空后关闭mac pa */
466 osal_u8 pm_vap_id; /* 执行休眠唤醒的hal vap id */
467 hal_work_sub_state_uint8 sub_work_state; /* pm状态,用于双rf下各rf状态同步 */
468
472
473/* hal device m2s状态机结构体 */
474typedef struct {
475 oal_fsm_stru oal_fsm; /* 状态机 */
476 osal_u8 is_fsm_attached; /* 状态机是否已经注册 */
477 wlan_m2s_type_enum_uint8 m2s_type; /* 0:软切换 1:硬切换 */
478 wlan_m2s_mode_stru m2s_mode; /* m2s业务申请占用bitmap,用户优先级管理 */
479 oal_bool_enum_uint8 command_scan_on; /* command下优化扫描是否在执行,防止miso时误end */
480 osal_u8 _rom[4]; /* 4字节储存rom地址 */
482
483#ifdef _PRE_WLAN_FEATURE_M2S
484typedef osal_void (*p_m2s_back_to_mimo_check_cb)(struct tag_hal_to_dmac_device_stru *hal_device);
485
486typedef struct {
487 p_m2s_back_to_mimo_check_cb m2s_back_to_mimo_check;
488} hal_device_m2s_mgr_cb;
489
490typedef struct {
491 /* 处于管理用户时,需要调整action方案 */
493 osal_u8 blacklist_bss_index; /* 黑名单MAC地址的数组下标 */
494 osal_u8 blacklist_bss_cnt; /* 黑名单用户个数 */
495 osal_u8 m2s_switch_protect : 1; /* 是否使能m2s切换保护,针对sta模式 */
496
497 /* 存在关联ap用户是blacklist none的,需要刷新标记为切换保持miso稳定态 */
498 osal_u8 delay_swi_miso_hold : 1;
499 osal_u8 mss_on : 1; /* 是否使能mss上报和下发功能 */
500 osal_u8 resv : 5;
501
502 /* 最近一次cur rssi mgmt逻辑学习到的合适single_txchain */
503 osal_u8 rssi_mgmt_single_txchain;
504 hal_device_m2s_mgr_cb hal_device_m2s_mgr_cb;
505} hal_device_m2s_mgr_stru;
506#endif
507
508typedef struct {
509 frw_timeout_stru s2m_resume_timer; /* 切回mimo状态超时等待定时器 */
510
511 /* siso ap切换回mimo探测时间,防止音乐切歌造成太过频繁 */
513
514 hal_coex_m2s_mode_bitmap_stru m2s_mode_bitmap; /* 申请siso切换的业务bitmap,目前是ldac=1 和6slot=2 */
515
516 /* 申请切换回mimo的业务bitmap,目前是ldac=0 a2dp=0 和6slot=0 3者都满足 */
518
519 /* 需要切回mimo的超时处理函数里面才用此bit来清m2s标记,防止l
520 dac结束时,6slot来了又切siso流程 */
522
523 osal_u8 siso_ap_excute_on : 1; /* siso ap切换siso执行标志 */
524 osal_u8 m2s_6slot : 1; /* 0: m2s; 1:开m2s */
528
531
534
535 osal_u32 rx_machw_dscr_addr[HAL_RX_DSCR_QUEUE_ID_BUTT]; /* 接收硬件队列状态寄存器 */
536
540
541 hal_alg_stat_info_stru hal_alg_stat; /* 算法使用的统计信息结构体 */
542
543 /* 0: 关闭常发; 1:保留给RF测试; 2: ampdu聚合帧常发; 3:非聚合帧常发 */
545
546 /* 0: 关闭常收; 1:保留给RF测试;2: ampdu聚合帧常收; 3:非聚合帧常收 */
548 osal_u8 one_packet_st : 1; /* 0表示DBC结束 1表示DBAC正在执行 */
549 osal_u8 clear_fifo_st : 1; /* 0表示无clear fifo状态,1表示clear fifo状态 */
550
551 osal_u8 al_txrx_ampdu_num : 7; /* 指示用于常发常收的聚合帧数目 */
553
554 /* 分两次打印寄存器信息,0:上报soc寄存器的值,1:上报rf寄存器的值, */
555 /* 2:上报MAC寄存器的值,3:补充 ABB_CALI_WL_CTRL 信息,4:上报phy寄存器的值 */
557 osal_u8 sdp_init_flag : 1; /* 0表示 wifi aware未初始化,1表示 wifi aware已初始化 */
558 osal_u8 rsv : 2; /* 已删除, 算法用的是vap中的,当前创建的P2P 是处于CL/GO 模式 */
559
561
566
567 osal_u8 p2p_hal_vap_idx; /* 用于P2P 中断产生后指示对应设备的hal vap */
568 osal_u8 sta_hal_vap_idx; /* 用于STA 中断产生后指示对应设备的hal vap */
569 osal_u8 ap_hal_vap_idx; /* 用于softAP 中断产生后指示对应设备的hal vap */
570 osal_u8 ax_vap_cnt; /* 记录当前存在ax设备的数目 */
571 osal_u8 resv[2]; // 2字节预留
572
574
575#ifdef _PRE_WLAN_FEATURE_DFS
576 hal_dfs_radar_filter_stru dfs_radar_filter;
577#endif
578
579 /* hh503重构出来了rf dev,校准参数全部都从rf dev中获取 */
580 /* 功率相关PHY参数 */
582
583 /* 字节对齐 */
585
587
589
591
592 osal_s8 rx_last_rssi; /* 保存上次rssi */
593 osal_u8 adc_4t01_flag : 1; /* ADC使用4路80M合成为320M */
595 osal_u8 adc_type : 4, /* hal_clk_adc_dac_enum */
596 dac_type : 4; /* hal_clk_adc_dac_enum */
597
598 osal_u8 current_11ax_working : 1, /* 当前hal dev是否有工作的11ax vap */
599 ampdu_tx_hw : 1, /* AMPDU TX硬化开关 */
600 ampdu_partial_resnd : 1, /* 硬件聚合时,MAC是否做部分帧重传 */
601 intf_det_invalid : 1, /* 指示当前的检测结果是否有效 */
604
605 /* 功率RF寄存器控使能时,固定功率配置不生效 */
607 m2s_excute_flag : 1; /* m2s正在执行的标记 */
608
609 wlan_chan_ratio_stru chan_ratio; /* 信道繁忙度相关统计量 */
610 wlan_scan_chan_stats_stru chan_result; /* 扫描时 一个信道的信道测量记录 */
611
612 hal_dev_fsm_stru hal_dev_fsm; /* hal device 状态机结构体 */
613 osal_u32 work_vap_bitmap; /* 需要在work状态工作的vap的个数 */
614
615 hal_m2s_fsm_stru hal_m2s_fsm; /* hal device m2s状态机 */
616
617 /* hal device上所有vap上用户数总和,方便统计本hal device上用户数 */
619 osal_u8 fix_power_level; /* 固定功率等级(取值为0, 1, 2, 3) */
620 osal_u8 control_frm_power_level; /* 控制帧的功率等级 */
621
622 osal_void *alg_priv; /* 算法私有结构体 */
624
626
629
632 fix_sifs_resp_rate : 1, /* 是否限制响应帧速率 */
633 is_mac_pa_enabled : 1, /* pa是否使能 */
634 sideband_flag : 1, /* 0:表示非边带认证国家,1:表示边带认证国家 */
635 resv4 : 1,
636 promis_switch : 1, /* 混杂模式开关 */
637 is_temp_protect_pa_off : 1; /* 过温保护是否关闭PA */
639
641
643#ifdef _PRE_WLAN_FEATURE_FTM
644 osal_u64 t1;
645 osal_u64 t4;
646#endif
647 /* 同频干扰算法 */
648 osal_u32 duty_ratio; /* 占空比统计 */
649
650 /* MAC测量信息 */
653
655
659
660 osal_u8 resv2[2]; /* 2字节resv */
661 oal_bool_enum_uint8 ps_mode_ever; /* 标记干扰检测期间是否进过低功耗 */
662
663 osal_u8 tx_ba_index_table[MAC_TX_BA_LUT_BMAP_LEN]; /* 发送端BA 软件维护LUT表位图 大小4 */
664 osal_u8 resv3[2]; // 4字节对齐
669 /* ROM化后资源扩展指针 */
676
677/* 自动调频的 pps门限 */
683
684/* HAL模块和DMAC模块共用的WLAN RX结构体 */
685typedef struct {
686 osal_u32 *base_dscr; /* 描述符基地址 */
688 osal_u16 dscr_num; /* 接收到的描述符的个数 */
689 osal_u8 queue_id; /* 队列同步标识 */
692
711
716
720
725
726typedef struct {
727 wlan_scan_chan_stats_stru chan_result_total; /* 时间、功率检测结果 */
728 hal_ch_mac_statics_stru mac_ch_stats_total; /* 发送、接收时间检测结果 */
730
731typedef struct {
732 osal_u8 vap_id; /* 下发扫描请求的vap id */
733 wlan_scan_type_enum_uint8 bss_type; /* 要扫描的bss类型 */
735 osal_u8 probe_delay; /* 主动扫描发probe request帧之前的等待时间 */
736
737 osal_u8 scan_func; /* DMAC SCANNER 扫描模式 */
738 osal_u8 max_scan_count_per_channel; /* 每个信道的扫描次数 */
739 osal_u16 scan_time; /* 扫描在某一信道停留此时间后,扫描结束, ms,必须是10的整数倍 */
740
741 wlan_scan_mode_enum_uint8 scan_mode; /* 扫描模式:前景扫描 or 背景扫描 */
742 osal_u8 channel_nums; /* 信道列表中信道的个数 */
743 osal_u8 resv[2]; /* 对齐 */
744
748/*****************************************************************************
749 4 函数实现
750*****************************************************************************/
751static INLINE__ osal_u32* hal_rx_dscr_get_real_addr(osal_u32 *rx_dscr)
752{
753 if (rx_dscr == OAL_PTR_NULL) {
754 return rx_dscr;
755 }
756 return (osal_u32 *)((osal_u8 *)rx_dscr + sizeof(hal_rx_dscr_stru));
757}
758
759static INLINE__ osal_u32* hal_rx_dscr_get_sw_addr(osal_u32 *rx_dscr)
760{
761 if (rx_dscr == OAL_PTR_NULL) {
762 return rx_dscr;
763 }
764 return (osal_u32 *)((osal_u8 *)rx_dscr - sizeof(hal_rx_dscr_stru));
765}
766
767/*****************************************************************************
768 10.2 对外暴露的配置接口
769*****************************************************************************/
770#ifdef __cplusplus
771#if __cplusplus
772}
773#endif
774#endif
775
776#endif
osal_u8 hal_fcs_protect_type_enum_uint8
Definition hal_commom_ops_type_rom.h:70
@ HAL_ISR_TYPE_BUTT
Definition hal_commom_ops_type_rom.h:170
@ HAL_ALG_ISR_NOTIFY_BUTT
Definition hal_commom_ops_type_rom.h:159
osal_u8 hal_scan_tx_dscr_dbg_ctl_enum_uint8
Definition hal_commom_ops_type_rom.h:264
osal_u8 hal_dfr_timer_step_enum_uint8
Definition hal_commom_ops_type_rom.h:215
osal_u8 hal_tx_queue_type_enum_uint8
Definition hal_commom_ops_type_rom.h:30
@ HAL_RX_DSCR_QUEUE_ID_BUTT
Definition hal_commom_ops_type_rom.h:123
osal_u8 hal_fcs_protect_cnt_enum_uint8
Definition hal_commom_ops_type_rom.h:102
#define HAL_WORK_SUB_STATE_NUM
Definition hal_common_ops_device_rom.h:233
osal_u8 hal_work_sub_state_uint8
Definition hal_common_ops_device_rom.h:232
osal_u8 hal_dscr_queue_status_enum_uint8
Definition hal_common_ops_device_rom.h:326
struct tag_hal_rx_dscr_stru hal_rx_dscr_stru
osal_void(* p_hal_alg_isr_func)(osal_u8 vap_id, osal_void *p_hal_to_dmac_device)
Definition hal_ops_common_rom.h:342
struct hal_dyn_cali_val hal_dyn_cali_val_stru
osal_u32(* p_tbtt_ap_isr_func)(osal_u8 mac_vap_id)
Definition hal_ops_common_rom.h:344
struct tag_hal_tx_dscr_stru hal_tx_dscr_stru
struct tag_hal_to_dmac_device_stru hal_to_dmac_device_stru
wlan_protect_mode_enum
Definition hal_ops_common_rom.h:92
@ WLAN_PROTECT_MODE_BUTT
Definition hal_ops_common_rom.h:96
@ WLAN_PROTECT_MODE_SELF_CTS
Definition hal_ops_common_rom.h:95
@ WLAN_PROTECT_MODE_NONE
Definition hal_ops_common_rom.h:93
@ WLAN_PROTECT_MODE_RTS_CTS
Definition hal_ops_common_rom.h:94
osal_void(* p_hal_gap_isr_func)(osal_u8 vap_id, osal_void *p_hal_to_dmac_device)
Definition hal_ops_common_rom.h:343
osal_u8 wlan_protect_mode_enum_uint8
Definition hal_ops_common_rom.h:98
struct _hal_device_handle_handler hal_dev_fsm_stru
osal_void(* p_dmac_scan_one_channel_start_cb)(struct tag_hal_to_dmac_device_stru *hal_device, oal_bool_enum_uint8 is_scan_start)
Definition hal_ops_common_rom.h:449
#define WLAN_MAC_ADDR_LEN
Definition mac_addr.c:28
osal_u8 resv1
Definition oal_net.h:1
osal_u8 rsv[3]
Definition oal_net.h:2
osal_u8 oal_bool_enum_uint8
Definition oal_types_device_rom.h:45
#define OAL_PTR_NULL
Definition oal_types_device_rom.h:30
#define INLINE__
Definition osal_list.h:25
int osal_s32
Definition osal_types.h:19
unsigned char osal_u8
Definition osal_types.h:11
signed char osal_s8
Definition osal_types.h:17
unsigned long long osal_u64
Definition osal_types.h:14
short osal_s16
Definition osal_types.h:18
void osal_void
Definition osal_types.h:29
unsigned int osal_u32
Definition osal_types.h:13
unsigned short osal_u16
Definition osal_types.h:12
Definition oal_fsm.h:38
Definition hal_ops_common_rom.h:457
oal_fsm_stru oal_fsm
Definition hal_ops_common_rom.h:460
osal_u8 is_fsm_attached
Definition hal_ops_common_rom.h:461
osal_u8 bit_resv
Definition hal_ops_common_rom.h:465
osal_u8 wait_hw_txq_empty
Definition hal_ops_common_rom.h:463
hal_work_sub_state_uint8 sub_work_state
Definition hal_ops_common_rom.h:467
osal_u8 mac_pa_switch_en
Definition hal_ops_common_rom.h:464
osal_u8 pm_vap_id
Definition hal_ops_common_rom.h:466
osal_u8 prev_state
Definition hal_ops_common_rom.h:459
osal_u8 cur_state
Definition hal_ops_common_rom.h:458
hal_device_fsm_cb hal_device_fsm_cb
Definition hal_ops_common_rom.h:470
osal_u32 vap_pm_state_bitmap[HAL_WORK_SUB_STATE_NUM]
Definition hal_ops_common_rom.h:469
frw_timeout_stru check_timer
Definition hal_ops_common_rom.h:462
Definition hal_ops_common_rom.h:731
wlan_scan_type_enum_uint8 scan_type
Definition hal_ops_common_rom.h:734
osal_u8 channel_nums
Definition hal_ops_common_rom.h:742
wlan_scan_type_enum_uint8 bss_type
Definition hal_ops_common_rom.h:733
wlan_scan_mode_enum_uint8 scan_mode
Definition hal_ops_common_rom.h:741
osal_u8 scan_func
Definition hal_ops_common_rom.h:737
osal_u8 vap_id
Definition hal_ops_common_rom.h:732
osal_u8 probe_delay
Definition hal_ops_common_rom.h:735
osal_u16 scan_time
Definition hal_ops_common_rom.h:739
hal_chan_measure_stru measure_period
Definition hal_ops_common_rom.h:745
osal_u8 max_scan_count_per_channel
Definition hal_ops_common_rom.h:738
Definition hal_ops_common_rom.h:726
wlan_scan_chan_stats_stru chan_result_total
Definition hal_ops_common_rom.h:727
hal_ch_mac_statics_stru mac_ch_stats_total
Definition hal_ops_common_rom.h:728
Definition hal_common_ops_device_rom.h:1437
Definition frw_ext_common_rom.h:20
Definition hal_common_ops_device_rom.h:1307
Definition hal_ops_common_rom.h:261
uintptr_t pkt_ptr
Definition hal_ops_common_rom.h:262
hal_tx_txop_alg_stru * tx_param
Definition hal_ops_common_rom.h:264
osal_u32 pkt_len
Definition hal_ops_common_rom.h:263
osal_u32 tx_chain_mask
Definition hal_ops_common_rom.h:265
Definition hal_common_ops_device_rom.h:1251
Definition hal_ops_common_rom.h:330
wlan_channel_band_enum_uint8 band
Definition hal_ops_common_rom.h:335
Definition hal_common_ops_device_rom.h:1447
Definition hal_common_ops_device_rom.h:1441
Definition hal_common_ops_device_rom.h:1039
Definition hal_common_ops_device_rom.h:1460
Definition hal_common_ops_device_rom.h:1467
Definition hal_ops_common_rom.h:717
hal_to_dmac_device_stru * hal_device
Definition hal_ops_common_rom.h:718
Definition hal_ops_common_rom.h:508
osal_u8 m2s_resv
Definition hal_ops_common_rom.h:526
osal_u8 m2s_6slot
Definition hal_ops_common_rom.h:524
hal_coex_s2m_mode_bitmap_stru s2m_mode_bitmap
Definition hal_ops_common_rom.h:517
frw_timeout_stru bt_coex_s2m_siso_ap_timer
Definition hal_ops_common_rom.h:512
hal_coex_s2m_mode_bitmap_stru s2m_wait_bitmap
Definition hal_ops_common_rom.h:521
hal_coex_m2s_mode_bitmap_stru m2s_mode_bitmap
Definition hal_ops_common_rom.h:514
frw_timeout_stru s2m_resume_timer
Definition hal_ops_common_rom.h:509
osal_u8 m2s_ldac
Definition hal_ops_common_rom.h:525
osal_u8 siso_ap_excute_on
Definition hal_ops_common_rom.h:523
Definition hal_common_ops_device_rom.h:1396
Definition hal_ops_common_rom.h:452
p_dmac_scan_one_channel_start_cb hmac_scan_one_channel_start
Definition hal_ops_common_rom.h:453
Definition hal_common_ops_device_rom.h:1324
Definition hal_ops_common_rom.h:355
frw_timeout_stru tx_prot_timer
Definition hal_ops_common_rom.h:356
hal_dfr_timer_step_enum_uint8 tx_prot_timer_step
Definition hal_ops_common_rom.h:357
osal_u16 tx_prot_time
Definition hal_ops_common_rom.h:359
Definition hal_ops_common_rom.h:386
osal_u8 tx_chain_sel
Definition hal_ops_common_rom.h:388
Definition hal_ops_common_rom.h:391
osal_u8 tpc_code
Definition hal_ops_common_rom.h:397
osal_u8 dscr_tpc
Definition hal_ops_common_rom.h:400
osal_u16 aus_cali_en_cnt[WLAN_BAND_BUTT]
Definition hal_ops_common_rom.h:392
osal_s32 pdet_val
Definition hal_ops_common_rom.h:395
hal_dyn_cali_chain_status_stru cali_chain_status_info
Definition hal_ops_common_rom.h:402
osal_u8 protocol
Definition hal_ops_common_rom.h:399
osal_u8 pdet_chain
Definition hal_ops_common_rom.h:398
osal_u16 aus_cali_en_interval[WLAN_BAND_BUTT]
Definition hal_ops_common_rom.h:393
osal_u8 dscr_pdet_en
Definition hal_ops_common_rom.h:401
Definition hal_ops_common_rom.h:712
hal_to_dmac_device_stru * hal_device
Definition hal_ops_common_rom.h:714
hal_error_state_stru error_state
Definition hal_ops_common_rom.h:713
Definition hal_common_ops_device_rom.h:1190
Definition hal_ops_common_rom.h:347
osal_u8 channel_num
Definition hal_ops_common_rom.h:351
osal_u16 dscr_num
Definition hal_ops_common_rom.h:350
osal_u8 queue_id
Definition hal_ops_common_rom.h:352
osal_u32 * base_dscr
Definition hal_ops_common_rom.h:349
Definition hal_ops_common_rom.h:474
wlan_m2s_mode_stru m2s_mode
Definition hal_ops_common_rom.h:478
oal_bool_enum_uint8 command_scan_on
Definition hal_ops_common_rom.h:479
wlan_m2s_type_enum_uint8 m2s_type
Definition hal_ops_common_rom.h:477
oal_fsm_stru oal_fsm
Definition hal_ops_common_rom.h:475
osal_u8 is_fsm_attached
Definition hal_ops_common_rom.h:476
Definition hal_ops_common_rom.h:35
osal_u16 cfg_one_pkt_tx_vap_index
Definition hal_ops_common_rom.h:39
osal_u16 protect_coex_pri
Definition hal_ops_common_rom.h:38
osal_u16 timeout
Definition hal_ops_common_rom.h:46
osal_u32 tx_mode
Definition hal_ops_common_rom.h:43
hal_fcs_protect_cnt_enum_uint8 protect_cnt
Definition hal_ops_common_rom.h:37
osal_u16 cfg_one_pkt_tx_peer_index
Definition hal_ops_common_rom.h:40
osal_u16 wait_timeout
Definition hal_ops_common_rom.h:48
osal_u16 bit_rsv
Definition hal_ops_common_rom.h:41
osal_u32 tx_data_rate
Definition hal_ops_common_rom.h:44
osal_u16 duration
Definition hal_ops_common_rom.h:45
hal_fcs_protect_type_enum_uint8 protect_type
Definition hal_ops_common_rom.h:36
Definition hal_ops_common_rom.h:53
osal_u8 resv
Definition hal_ops_common_rom.h:59
osal_u16 tx_time
Definition hal_ops_common_rom.h:60
osal_u8 timeout
Definition hal_ops_common_rom.h:57
osal_u8 status
Definition hal_ops_common_rom.h:56
osal_u8 vap_id
Definition hal_ops_common_rom.h:55
hal_fcs_protect_type_enum_uint8 protect_type
Definition hal_ops_common_rom.h:54
osal_u8 tx_cnt
Definition hal_ops_common_rom.h:58
Definition hal_ops_common_rom.h:366
osal_u8 rate_one_pkt
Definition hal_ops_common_rom.h:378
osal_u8 rate_vht_report
Definition hal_ops_common_rom.h:382
osal_u8 rate_abort_selfcts
Definition hal_ops_common_rom.h:379
osal_u8 rate_bar
Definition hal_ops_common_rom.h:376
osal_u8 rate_cfend
Definition hal_ops_common_rom.h:381
osal_u8 rate_rts
Definition hal_ops_common_rom.h:377
Definition hal_common_ops_device_rom.h:738
Definition hal_common_ops_device_rom.h:953
Definition hal_ops_common_rom.h:319
hal_dscr_queue_status_enum_uint8 queue_status
Definition hal_ops_common_rom.h:322
osal_u8 available_cnt
Definition hal_ops_common_rom.h:323
osal_u16 element_cnt
Definition hal_ops_common_rom.h:321
Definition hal_ops_common_rom.h:405
osal_u8 channel_nums
Definition hal_ops_common_rom.h:415
osal_u8 curr_channel_scan_count
Definition hal_ops_common_rom.h:422
osal_u16 scan_time
Definition hal_ops_common_rom.h:429
wlan_scan_mode_enum_uint8 scan_mode
Definition hal_ops_common_rom.h:410
osal_u8 start_chan_idx
Definition hal_ops_common_rom.h:413
osal_u8 curr_scan_state
Definition hal_ops_common_rom.h:435
osal_u32 scan_timestamp
Definition hal_ops_common_rom.h:432
osal_u16 work_time_on_home_channel
Definition hal_ops_common_rom.h:430
frw_timeout_stru scan_timer
Definition hal_ops_common_rom.h:406
osal_u8 scan_ap_num_in_2p4
Definition hal_ops_common_rom.h:416
osal_u8 last_channel_band
Definition hal_ops_common_rom.h:418
osal_u8 resv1
Definition hal_ops_common_rom.h:444
osal_u8 scan_pause_bitmap
Definition hal_ops_common_rom.h:411
osal_u8 max_scan_count_per_channel
Definition hal_ops_common_rom.h:423
osal_u8 scan_ap_num_in_5p0
Definition hal_ops_common_rom.h:434
osal_u8 scan_chan_idx
Definition hal_ops_common_rom.h:414
osal_u8 need_switch_back_home_channel
Definition hal_ops_common_rom.h:439
osal_u8 working_in_home_chan
Definition hal_ops_common_rom.h:440
osal_u8 scan_band
Definition hal_ops_common_rom.h:441
osal_u8 scan_curr_chan_find_bss_flag
Definition hal_ops_common_rom.h:436
hal_scan_tx_dscr_dbg_ctl_enum_uint8 tx_dscr_debug_ctl
Definition hal_ops_common_rom.h:443
osal_u8 scan_channel_interval
Definition hal_ops_common_rom.h:426
mac_channel_stru home_channel
Definition hal_ops_common_rom.h:407
osal_u8 resv0
Definition hal_ops_common_rom.h:442
Definition hal_ops_common_rom.h:693
osal_s16 pdet_val
Definition hal_ops_common_rom.h:698
osal_u8 resv
Definition hal_ops_common_rom.h:706
osal_u16 tx_time
Definition hal_ops_common_rom.h:703
osal_u8 chain_num
Definition hal_ops_common_rom.h:705
osal_u32 backoff_done_timestamp
Definition hal_ops_common_rom.h:708
osal_u64 t1
Definition hal_ops_common_rom.h:701
osal_u8 dscr_num
Definition hal_ops_common_rom.h:696
oal_bool_enum_uint8 pdet_enable
Definition hal_ops_common_rom.h:704
osal_u64 t4
Definition hal_ops_common_rom.h:702
hal_to_dmac_device_stru * hal_device
Definition hal_ops_common_rom.h:695
hal_tx_dscr_stru * base_dscr
Definition hal_ops_common_rom.h:694
osal_u8 tpc_code
Definition hal_ops_common_rom.h:699
osal_u32 tx_done_timestamp
Definition hal_ops_common_rom.h:709
Definition hal_common_ops_device_rom.h:720
Definition hal_ops_common_rom.h:67
osal_u8 ppdu_cnt
Definition hal_ops_common_rom.h:70
osal_u8 mpdu_cnt
Definition hal_ops_common_rom.h:71
hal_dscr_queue_status_enum_uint8 queue_status
Definition hal_ops_common_rom.h:69
Definition hal_ops_common_rom.h:235
osal_u32 mac_hdr_start_addr
Definition hal_ops_common_rom.h:236
osal_void * skb_start_addr
Definition hal_ops_common_rom.h:237
Definition hal_ops_common_rom.h:268
osal_u8 pdet_en
Definition hal_ops_common_rom.h:284
osal_u8 ftm_protocol_mode
Definition hal_ops_common_rom.h:292
osal_u8 resrv_1
Definition hal_ops_common_rom.h:290
osal_u8 tx_pn_hw_bypass
Definition hal_ops_common_rom.h:280
osal_u8 is_ftm
Definition hal_ops_common_rom.h:295
osal_u8 seq_ctl_hw_bypass
Definition hal_ops_common_rom.h:289
osal_u16 txop_ps_not_allowed
Definition hal_ops_common_rom.h:271
osal_u8 tx_addba_ssn_bypass
Definition hal_ops_common_rom.h:281
osal_u8 ftm_cali_en
Definition hal_ops_common_rom.h:294
osal_u8 ftm_bandwidth
Definition hal_ops_common_rom.h:293
osal_u8 lsig_txop
Definition hal_ops_common_rom.h:275
osal_u8 tx_fcs_gen_err_en
Definition hal_ops_common_rom.h:283
osal_u16 partial_aid
Definition hal_ops_common_rom.h:269
osal_u8 duration_hw_bypass
Definition hal_ops_common_rom.h:278
osal_u8 long_nav_enable
Definition hal_ops_common_rom.h:282
osal_u16 ax_bss_color
Definition hal_ops_common_rom.h:270
osal_u8 ftm_chain
Definition hal_ops_common_rom.h:296
osal_u8 peer_ps_chk_disable
Definition hal_ops_common_rom.h:274
osal_u8 ra_lut_index
Definition hal_ops_common_rom.h:273
osal_u8 retry_flag_hw_bypass
Definition hal_ops_common_rom.h:277
osal_u8 obss_pd_tx_disable
Definition hal_ops_common_rom.h:276
osal_u8 cipher_key_type
Definition hal_ops_common_rom.h:286
osal_u8 timestamp_hw_bypass
Definition hal_ops_common_rom.h:279
osal_u8 tx_vap_idx
Definition hal_ops_common_rom.h:272
osal_u8 cipher_key_id
Definition hal_ops_common_rom.h:288
osal_u8 cipher_protocol_type
Definition hal_ops_common_rom.h:287
osal_u8 resrv_2
Definition hal_ops_common_rom.h:297
Definition hal_ops_common_rom.h:721
osal_u8 ampdu_enable
Definition hal_ops_common_rom.h:722
osal_u8 mpdu_num
Definition hal_ops_common_rom.h:723
Definition hal_common_ops_device_rom.h:644
Definition hal_ops_common_rom.h:304
osal_u16 resv
Definition hal_ops_common_rom.h:312
hal_tx_mpdu_address_params_stru mpdu_addr
Definition hal_ops_common_rom.h:308
hal_tx_mpdu_ctl mpdu_ctl
Definition hal_ops_common_rom.h:310
hal_tx_mpdu_mac_hdr_params_stru mpdu_mac_hdr
Definition hal_ops_common_rom.h:307
osal_u16 mpdu_len
Definition hal_ops_common_rom.h:311
hal_wmm_txop_params_stru wmm
Definition hal_ops_common_rom.h:306
Definition hal_common_ops_device_rom.h:656
Definition hal_common_ops_device_rom.h:679
Definition hal_ops_common_rom.h:240
hal_tx_phy_mode_one_stru phy_info
Definition hal_ops_common_rom.h:242
hal_tx_txop_tpc_stru tpc
Definition hal_ops_common_rom.h:244
osal_u32 rts_tpc_rank
Definition hal_ops_common_rom.h:247
osal_u32 res_
Definition hal_ops_common_rom.h:248
osal_u32 self_cts_protect
Definition hal_ops_common_rom.h:246
Definition hal_common_ops_device_rom.h:599
Definition hal_ops_common_rom.h:255
hal_tx_txop_alg_stru * txop_param
Definition hal_ops_common_rom.h:257
hal_rate_pow_code_gain_table_stru * rate_pow_table
Definition hal_ops_common_rom.h:256
Definition hal_ops_common_rom.h:685
osal_u8 channel_num
Definition hal_ops_common_rom.h:690
osal_u32 * base_dscr
Definition hal_ops_common_rom.h:686
osal_u8 queue_id
Definition hal_ops_common_rom.h:689
hal_to_dmac_device_stru * hal_device
Definition hal_ops_common_rom.h:687
osal_u16 dscr_num
Definition hal_ops_common_rom.h:688
Definition hal_common_ops_device_rom.h:636
Definition hal_ops_common_rom.h:678
osal_u32 pps_value_1
Definition hal_ops_common_rom.h:680
osal_u32 pps_value_0
Definition hal_ops_common_rom.h:679
osal_u32 pps_value_2
Definition hal_ops_common_rom.h:681
Definition wlan_types_base_rom.h:258
Definition osal_list.h:39
Definition hal_ops_common_rom.h:229
osal_void * skb_start_addr
Definition hal_ops_common_rom.h:231
struct osal_list_head entry
Definition hal_ops_common_rom.h:230
Definition hal_ops_common_rom.h:529
osal_u8 ax_vap_cnt
Definition hal_ops_common_rom.h:570
osal_u8 dpd_cali_doing
Definition hal_ops_common_rom.h:602
osal_u8 reg_info_flag
Definition hal_ops_common_rom.h:556
osal_u8 clear_fifo_st
Definition hal_ops_common_rom.h:549
osal_u32 tx_done_timestamp
Definition hal_ops_common_rom.h:674
osal_u8 al_rx_flag
Definition hal_ops_common_rom.h:547
osal_u8 is_temp_protect_pa_off
Definition hal_ops_common_rom.h:637
osal_u8 mac_parse_tim
Definition hal_ops_common_rom.h:631
osal_u8 resv1
Definition hal_ops_common_rom.h:658
osal_u8 promis_switch
Definition hal_ops_common_rom.h:636
alg_rx_dscr_ctl_device_info_stru rx_dscr_ctl
Definition hal_ops_common_rom.h:642
osal_u8 tx_ba_index_table[MAC_TX_BA_LUT_BMAP_LEN]
Definition hal_ops_common_rom.h:663
osal_u8 assoc_user_nums
Definition hal_ops_common_rom.h:618
osal_u32 last_trigger_time
Definition hal_ops_common_rom.h:666
mac_channel_stru wifi_channel_status
Definition hal_ops_common_rom.h:588
osal_u8 dpd_clk_on
Definition hal_ops_common_rom.h:603
osal_u16 tx_time
Definition hal_ops_common_rom.h:671
osal_u32 duty_ratio
Definition hal_ops_common_rom.h:648
hal_dyn_cali_val_stru dyn_cali_val
Definition hal_ops_common_rom.h:573
osal_u8 ap_hal_vap_idx
Definition hal_ops_common_rom.h:569
osal_u16 rx_high_dscr_cnt
Definition hal_ops_common_rom.h:539
osal_u8 ampdu_tx_hw
Definition hal_ops_common_rom.h:599
hal_tx_dscr_queue_header_stru tx_dscr_queue[HAL_TX_QUEUE_NUM]
Definition hal_ops_common_rom.h:533
osal_u8 intf_det_invalid
Definition hal_ops_common_rom.h:601
osal_u32 rx_ampdu_succ_num
Definition hal_ops_common_rom.h:564
oal_bool_enum_uint8 ps_mode_ever
Definition hal_ops_common_rom.h:661
osal_u8 resv2[2]
Definition hal_ops_common_rom.h:660
osal_u8 one_packet_st
Definition hal_ops_common_rom.h:548
hal_device_btcoex_sw_preempt_stru btcoex_sw_preempt
Definition hal_ops_common_rom.h:628
osal_u8 psd_enable
Definition hal_ops_common_rom.h:657
p_tbtt_ap_isr_func tbtt_update_beacon_func
Definition hal_ops_common_rom.h:640
osal_u32 phase_det_cnt
Definition hal_ops_common_rom.h:668
osal_u32 rx_machw_dscr_addr[HAL_RX_DSCR_QUEUE_ID_BUTT]
Definition hal_ops_common_rom.h:535
osal_u16 rx_small_dscr_cnt
Definition hal_ops_common_rom.h:538
hal_m2s_fsm_stru hal_m2s_fsm
Definition hal_ops_common_rom.h:615
osal_u8 reserve[2]
Definition hal_ops_common_rom.h:638
osal_u8 pow_rf_reg_ctl_flag
Definition hal_ops_common_rom.h:606
osal_u32 rx_normal_mdpu_succ_num
Definition hal_ops_common_rom.h:563
osal_u8 resv[2]
Definition hal_ops_common_rom.h:571
osal_u8 m2s_excute_flag
Definition hal_ops_common_rom.h:607
p_hal_alg_isr_func pa_hal_alg_isr_func_table[HAL_ISR_TYPE_BUTT][HAL_ALG_ISR_NOTIFY_BUTT]
Definition hal_ops_common_rom.h:584
osal_u8 is_mac_pa_enabled
Definition hal_ops_common_rom.h:633
osal_s8 rx_last_rssi
Definition hal_ops_common_rom.h:592
osal_u32 rx_ppdu_fail_num
Definition hal_ops_common_rom.h:565
osal_u8 control_frm_power_level
Definition hal_ops_common_rom.h:620
osal_u32 work_vap_bitmap
Definition hal_ops_common_rom.h:613
hal_rx_dscr_queue_header_stru rx_dscr_queue[HAL_RX_QUEUE_NUM]
Definition hal_ops_common_rom.h:532
osal_u32 backoff_done_timestamp
Definition hal_ops_common_rom.h:673
osal_u8 fix_sifs_resp_rate
Definition hal_ops_common_rom.h:632
osal_u8 sideband_flag
Definition hal_ops_common_rom.h:634
osal_u8 resv5[2]
Definition hal_ops_common_rom.h:672
osal_u8 dac_type
Definition hal_ops_common_rom.h:596
osal_u16 rx_normal_dscr_cnt
Definition hal_ops_common_rom.h:537
osal_u8 rsv
Definition hal_ops_common_rom.h:558
hal_device_btcoex_mgr_stru device_btcoex_mgr
Definition hal_ops_common_rom.h:654
hal_ch_mac_statics_stru mac_ch_stats
Definition hal_ops_common_rom.h:651
hal_device_tx_pwr_ctrl_stru tx_pwr_ctrl
Definition hal_ops_common_rom.h:625
osal_u8 fix_power_level
Definition hal_ops_common_rom.h:619
osal_u8 resv3[2]
Definition hal_ops_common_rom.h:664
osal_u8 sta_hal_vap_idx
Definition hal_ops_common_rom.h:568
wlan_scan_chan_stats_stru chan_result
Definition hal_ops_common_rom.h:610
hal_cfg_cap_info_stru * cfg_cap_info
Definition hal_ops_common_rom.h:530
hal_dev_fsm_stru hal_dev_fsm
Definition hal_ops_common_rom.h:612
osal_u8 adc_type
Definition hal_ops_common_rom.h:595
frw_timeout_stru btcoex_powersave_timer
Definition hal_ops_common_rom.h:627
osal_u8 resv4
Definition hal_ops_common_rom.h:635
osal_void * _rom
Definition hal_ops_common_rom.h:670
osal_u8 twt_session_enable
Definition hal_ops_common_rom.h:656
osal_u8 current_rx_list_index
Definition hal_ops_common_rom.h:552
hal_alg_stat_info_stru hal_alg_stat
Definition hal_ops_common_rom.h:541
osal_u16 foc_err_cnt
Definition hal_ops_common_rom.h:665
osal_u8 current_chan_number
Definition hal_ops_common_rom.h:560
hal_ch_intf_statics_stru intf_statics_stru
Definition hal_ops_common_rom.h:652
osal_u8 al_txrx_ampdu_num
Definition hal_ops_common_rom.h:551
osal_s16 always_rx_rssi
Definition hal_ops_common_rom.h:586
wlan_chan_ratio_stru chan_ratio
Definition hal_ops_common_rom.h:609
osal_u8 al_tx_flag
Definition hal_ops_common_rom.h:544
hal_scan_params_stru hal_scan_params
Definition hal_ops_common_rom.h:623
hal_rssi_stru rssi
Definition hal_ops_common_rom.h:590
osal_u8 current_11ax_working
Definition hal_ops_common_rom.h:598
hal_phy_pow_param_stru phy_pow_param
Definition hal_ops_common_rom.h:581
osal_u8 sdp_init_flag
Definition hal_ops_common_rom.h:557
osal_u8 adc_4t01_flag
Definition hal_ops_common_rom.h:593
osal_u8 ampdu_partial_resnd
Definition hal_ops_common_rom.h:600
osal_u8 srb_switch
Definition hal_ops_common_rom.h:630
osal_s32 cfo_phase_avg
Definition hal_ops_common_rom.h:667
osal_u8 resv0
Definition hal_ops_common_rom.h:594
osal_void * alg_priv
Definition hal_ops_common_rom.h:622
osal_u8 p2p_hal_vap_idx
Definition hal_ops_common_rom.h:567
osal_u32 al_tx_pkt_len
Definition hal_ops_common_rom.h:562
Definition hal_ops_common_rom.h:213
osal_u16 original_mpdu_len
Definition hal_ops_common_rom.h:216
osal_u8 is_rifs
Definition hal_ops_common_rom.h:220
osal_u8 is_ampdu
Definition hal_ops_common_rom.h:219
struct osal_list_head entry
Definition hal_ops_common_rom.h:214
osal_void * skb_start_addr
Definition hal_ops_common_rom.h:215
hal_tx_queue_type_enum_uint8 q_num
Definition hal_ops_common_rom.h:217
osal_u8 is_retried
Definition hal_ops_common_rom.h:218
osal_u8 is_first
Definition hal_ops_common_rom.h:221
osal_u8 tid
Definition hal_ops_common_rom.h:222
Definition wlan_types.h:766
Definition wlan_types.h:776
Definition wlan_types_base_rom.h:469
Definition wlan_types.h:783
unsigned int uintptr_t
Definition td_type.h:65
Definition hal_uart_v151_regs_def.h:38
@ WLAN_OFDM_ACK_CTS_TYPE_BUTT
Definition wlan_custom_type.h:22
#define HAL_TX_QUEUE_NUM
Definition wlan_spec_hh503_rom.h:51
#define WLAN_M2S_BLACKLIST_MAX_NUM
Definition wlan_spec_hh503_rom.h:256
#define HAL_RX_QUEUE_NUM
Definition wlan_spec_hh503_rom.h:49
#define WLAN_DSCR_SUBTABEL_MAX_NUM
Definition wlan_spec_hh503_rom.h:91
#define HAL_TX_RATE_MAX_NUM
Definition wlan_spec_hh503_rom.h:40
#define MAC_TX_BA_LUT_BMAP_LEN
Definition wlan_spec_hh503_rom.h:84
#define WLAN_RF_CHANNEL_NUMS
Definition wlan_spec_rom.h:214
osal_u8 wlan_phy_protocol_enum_uint8
Definition wlan_spec_type_rom.h:33
#define WLAN_MAX_CHANNEL_NUM
Definition wlan_types.h:350
#define WLAN_2G_SUB_BAND_NUM
Definition wlan_types.h:21
#define WLAN_5G_SUB_BAND_NUM
Definition wlan_types.h:150
osal_u8 wlan_scan_type_enum_uint8
Definition wlan_types_base_rom.h:375
@ WLAN_BAND_BUTT
Definition wlan_types_base_rom.h:95
osal_u8 wlan_m2s_type_enum_uint8
Definition wlan_types_base_rom.h:444
osal_u8 wlan_channel_band_enum_uint8
Definition wlan_types_base_rom.h:97
osal_u8 wlan_legacy_rate_value_enum_uint8
Definition wlan_types_base_rom.h:217
osal_u8 wlan_scan_mode_enum_uint8
Definition wlan_types_base_rom.h:395