WS63 SDK 文档 7021f4f@fbb_ws63
ws63 和 ws63e 解决方案的 SDK 文档
载入中...
搜索中...
未找到
wlan_spec_rom.h
浏览该文件的文档.
1/*
2 * Copyright (c) HiSilicon (Shanghai) Technologies Co., Ltd. 2020-2022. All rights reserved.
3 * Description: Header file of WLAN product specification macro definition.
4 */
5
6#ifndef WLAN_SPEC_ROM_H
7#define WLAN_SPEC_ROM_H
8
9/*****************************************************************************
10 其他头文件包含
11*****************************************************************************/
12#include "wlan_spec_hh503_rom.h"
13#include "wlan_spec_type_rom.h"
14#include "wlan_phy_common_rom.h"
15
16#ifdef __cplusplus
17#if __cplusplus
18extern "C" {
19#endif
20#endif
21/*****************************************************************************
22 1.1.1 版本spec
23*****************************************************************************/
24#define WLAN_CHIP_VERSION_WF51V100H 0x11510101
25
26#define WLAN_CHIP_VERSION_WF51V100L 0x11510102
27
28/*****************************************************************************
29 1.1.2 多Core对应spec
30*****************************************************************************/
31/* WiFi对应系统CORE的数量 为1 */
32#define WLAN_FRW_MAX_NUM_CORES 1
33
34/*****************************************************************************
35 2 WLAN 宏定义
36*****************************************************************************/
37/*****************************************************************************
38 2.1 WLAN芯片对应的spec
39*****************************************************************************/
40/* 每个board支持chip的最大个数,总数不会超过8个 */
41#define WLAN_CHIP_MAX_NUM_PER_BOARD 1
42
43/* 每个chip支持hal device的最大个数,总数不会超过8个 */
44#define WLAN_DEVICE_MAX_NUM_PER_CHIP 1
45
46#define WLAN_SERVICE_DEVICE_MAX_NUM_PER_CHIP 1 /* 每个chip支持业务device的最大个数 */
47
48/* wg. 以下两个宏含义一致 HMAC和DMAC需要归一 */
49/* 整个BOARD支持的最大的业务device数目 */
50#define WLAN_SERVICE_DEVICE_SUPPORT_MAX_NUM_SPEC \
51 (WLAN_CHIP_MAX_NUM_PER_BOARD * WLAN_SERVICE_DEVICE_MAX_NUM_PER_CHIP)
52
53#define WLAN_SERVICE_DEVICE_MAX_NUM 1 /* 业务device数量,单device与上面宏合并 */
54
55/* 业务AP规格 */
56#define WLAN_SERVICE_AP_MAX_NUM_PER_DEVICE 2
57/* 业务STA规格 */
58#define WLAN_SERVICE_STA_MAX_NUM_PER_DEVICE 3
59/* 业务ap sta共存时vap数目 */
60#define WLAN_AP_STA_COEXIST_VAP_NUM 0
61
62/* 由于最大业务VAP个数需要按照设备同时创建的最大规格初始化,目前按照最大的规格设置即可 */
63#define WLAN_CONFIG_VAP_MAX_NUM_PER_DEVICE 1 /* 配置VAP个数,一个业务device一个 */
64/* 业务VAP数目(4个):STA 1个+P2P 1个+ SOFT AP 1个+1个预留扩展 */
65#define WLAN_SERVICE_VAP_MAX_NUM_PER_DEVICE 3
66
67/* 每个device支持vap的最大个数=最大业务VAP数目+配置VAP数量 */
68
69/* 4个业务VAP + 1个配置vap */
70#define WLAN_VAP_MAX_NUM_PER_DEVICE_LIMIT \
71 (WLAN_CONFIG_VAP_MAX_NUM_PER_DEVICE + WLAN_SERVICE_VAP_MAX_NUM_PER_DEVICE)
72
73/* 整个BOARD支持的最大的VAP数目 */
74#define WLAN_VAP_SUPPORT_MAX_NUM_LIMIT \
75 (WLAN_SERVICE_DEVICE_SUPPORT_MAX_NUM_SPEC * WLAN_VAP_MAX_NUM_PER_DEVICE_LIMIT)
76
77#define WLAN_VAP_NUM_PER_BOARD WLAN_VAP_SUPPORT_MAX_NUM_LIMIT
78
79/* 整个BOARD支持的最大业务VAP的数目 */
80#define WLAN_SERVICE_VAP_SUPPORT_MAX_NUM_LIMIT \
81(WLAN_SERVICE_DEVICE_SUPPORT_MAX_NUM_SPEC * (WLAN_VAP_MAX_NUM_PER_DEVICE_LIMIT - WLAN_CONFIG_VAP_MAX_NUM_PER_DEVICE))
82
83/* 以下两个成员可以定制化: WLAN_ASSOC_USER_MAX_NUM对应g_us_assoc_max_user,WLAN_ACTIVE_USER_MAX_NUM对应g_us_active_max_user */
84/* 关联用户的最大个数 */
85#define WLAN_ASSOC_USER_MAX_NUM 6
86#define WLAN_VAP_USER_HASH_MAX_VALUE (WLAN_ASSOC_USER_MAX_NUM * 2) /* 2为扩展因子 */
87#define WLAN_DTCM_RAM_ASSOC_USER_MAX_NUM 6 /* DTCM_RAM中定义的关联用户最大个数,为总用户规格16的一半 */
88
89/* 不可用的RA LUT IDX */
90#define WLAN_INVALID_RA_LUT_IDX WLAN_ACTIVE_USER_MAX_NUM
91
92/* 以下三个用户规格,表示软件支持最大规格; 与之对应的是MAC_RES_XXX(大于等于RES_XXX),为定制化得到,对应WLAN_ASSOC_USER_MAX_NUM为g_us_assoc_max_user */
93/* 使用规则:这里三个用于oal oam hal初始化成员,或者数组下标,与之对应mac res的单播和组播,以及整board user个数会封装成函数供业务层代码调用 */
94/* board最大关联用户数 = 1个CHIP支持的最大关联用户数 * board上面的CHIP数目 */
95#define WLAN_ASOC_USER_MAX_NUM_LIMIT (WLAN_ASSOC_USER_MAX_NUM * WLAN_CHIP_MAX_NUM_PER_BOARD)
96
97/* board组播用户数 */
98#define WLAN_MULTI_USER_MAX_NUM_LIMIT (WLAN_SERVICE_VAP_SUPPORT_MAX_NUM_LIMIT)
99
100/* board最大用户数 = 最大关联用户数 + 组播用户个数 */
101#define WLAN_USER_MAX_USER_LIMIT (WLAN_ASOC_USER_MAX_NUM_LIMIT + WLAN_MULTI_USER_MAX_NUM_LIMIT)
102
103/*****************************************************************************
104 2.2 WLAN协议对应的spec
105*****************************************************************************/
106/* 速率功率表各协议的档位数量 */
107#define WLAN_POW_11B_RATE_NUM 4 /* 11b速率数目 */
108#define WLAN_POW_LEGACY_RATE_NUM 8 /* 11a/g速率数目 */
109#define WLAN_POW_NONLEGACY_20M_NUM 12 /* 11n_11ac_11ax_20M速率数目最大值 */
110#define WLAN_POW_NONLEGACY_40M_NUM 13 /* 11n_11ac_11ax_40M速率数目最大值+mcs32 */
111// 速率功率表的表长
112#define WLAN_POW_RATE_POW_CODE_TABLE_2G_LEN (WLAN_POW_11B_RATE_NUM + WLAN_POW_LEGACY_RATE_NUM + \
113 WLAN_POW_NONLEGACY_20M_NUM + WLAN_POW_NONLEGACY_40M_NUM)
114// 速率功率表的协议速率偏移
115/* 11b 速率索引偏移 */
116#define WLAN_POW_RATE_POW_CODE_11B_OFFSET 0
117/* 11a/g 速率索引偏移 */
118#define WLAN_POW_RATE_POW_CODE_LEGACY_OFFSET WLAN_POW_RATE_POW_CODE_11B_OFFSET
119/* 11n_11ac_11ax_20M 速率索引偏移 */
120#define WLAN_POW_RATE_POW_CODE_NONLEGACY_20M_OFFSET (WLAN_POW_11B_RATE_NUM + WLAN_POW_LEGACY_RATE_NUM)
121/* 11n_11ac_11ax_40M 速率索引偏移 */
122#define WLAN_POW_RATE_POW_CODE_NONLEGACY_40M_OFFSET \
123 (WLAN_POW_RATE_POW_CODE_NONLEGACY_20M_OFFSET + WLAN_POW_NONLEGACY_20M_NUM)
124/* 11n_11ac_11ax_80M 速率索引偏移 */
125#define WLAN_POW_RATE_POW_CODE_NONLEGACY_80M_OFFSET WLAN_POW_RATE_POW_CODE_INVALID_OFFSET
126/* 11n_11ac_11ax_160M 速率索引偏移 */
127#define WLAN_POW_RATE_POW_CODE_NONLEGACY_160M_OFFSET WLAN_POW_RATE_POW_CODE_INVALID_OFFSET
128/*****************************************************************************
129 2.3 oam相关的spec
130*****************************************************************************/
131#define WLAN_OAM_FILE_PATH "\\home\\oam.log" /* LINUX和裸系统下,LOG文件默认的保存位置 */
132
133/*****************************************************************************
134 2.4 mem对应的spec
135*****************************************************************************/
136/*****************************************************************************
137 2.4.1 内存池规格
138*****************************************************************************/
139/* ws73 3個VAP,每個VAP提供472字節長度的存放地址 */
140#define WLAN_TXBFEE_BUFF_SIZE_PER_VAP 472
141#define WLAN_TXBFEE_BUFF_SIZE (WLAN_TXBFEE_BUFF_SIZE_PER_VAP * WLAN_SERVICE_VAP_MAX_NUM_PER_DEVICE)
142#define WLAN_MEM_MAX_USERS_NUM 4 /* 共享同一块内存的最大用户数 */
143/*****************************************************************************
144 2.4.2 共享描述符内存池配置信息
145*****************************************************************************/
146#define WLAN_MAX_NETBUF_SIZE (WLAN_LARGE_NETBUF_SIZE + OAL_MAX_MAC_HDR_LEN) /* 最大帧长:帧头+payload */
147/* 整个device所有TID的最大MPDU数量限制
148 需要重新定义,以支持调度逻辑
149*/
150#ifdef WIFI_TCM_OPTIMIZE
151#define WLAN_TID_MPDU_NUM_LIMIT 72
152#else
153#define WLAN_TID_MPDU_NUM_LIMIT 36 /* app版本需要限制总动态内存使用 */
154#endif
155#define WLAN_SINGLE_TID_MPDU_NUM_LIMIT 12
156
157#ifdef WIFI_TCM_OPTIMIZE
158#define MAX_MPDU_NUM_IN_PS_QUEUE 32
159#define MAX_MPDU_NUM_IN_PS_QUEUE_TOTAL 32
160#else
161#define MAX_MPDU_NUM_IN_PS_QUEUE 4
162#define MAX_MPDU_NUM_IN_PS_QUEUE_TOTAL 16 /* app版本需要限制总动态内存使用 */
163#endif
164
165// WLAN_MEM_NETBUF_CNT1由_PRE_WLAN_FEATURE_11K特性解耦
166#if defined(_PRE_OS_VERSION_LITEOS) && defined(_PRE_OS_VERSION) \
167 && (_PRE_OS_VERSION_LITEOS == _PRE_OS_VERSION)
168#define WLAN_MEM_NETBUF_CNT1 16
169#else
170#define WLAN_MEM_NETBUF_CNT1 192 /* 接收数据帧是AMSDU,其中的每个MSDU对应一个克隆netbuf */
171#endif
172#define WLAN_MEM_SHARED_RX_DSCR_SIZE 68
173#define WLAN_MEM_NETBUF_SIZE2 1600
174#define WLAN_LARGE_NETBUF_SIZE_TMP 1200
175#define WLAN_HMEM_EVENT_SIZE2 528 /* 注意: 事件内存长度包括4字节IPC头长度 */
176#define WLAN_HMEM_LOCAL_SIZE2 144
177
178#define WLAN_WPS_IE_MAX_SIZE (WLAN_HMEM_EVENT_SIZE2 - 128)
179
180/*****************************************************************************
181 2.4.10 RF通道数规格已放入WLAN_SPEC
182*****************************************************************************/
183#ifdef _PRE_WLAN_FEATURE_DAQ
184#define WLAN_MEM_MAC_TEST_INFO_SIZE (64 * 1024)
185#endif
186
187
188/*****************************************************************************
189 2.4.11 TCP ACK优化
190*****************************************************************************/
191/* tcp ack过滤功能不再默认打开,根据流量调整 */
192#define DEFAULT_TX_TCP_ACK_OPT_ENABLE (OSAL_FALSE)
193#define DEFAULT_RX_TCP_ACK_OPT_ENABLE (OSAL_FALSE)
194#define DEFAULT_TX_TCP_ACK_THRESHOLD (1) /* 丢弃发送ack 的门限 */
195#define DEFAULT_RX_TCP_ACK_THRESHOLD (1) /* 丢弃接收ack 的门限 */
196/*****************************************************************************
197 2.5 frw相关的spec
198*****************************************************************************/
199
200/******************************************************************************
201 事件队列配置信息表
202 注意: 每个队列所能容纳的最大事件个数必须是2的整数次幂
203*******************************************************************************/
204/* host event cfg table */
205#define WLAN_ACTIVE_USER_MAX_NUM 6 /* 活跃用户的最大个数 */
206
207/* 活跃用户索引位图长度 */
208#define WLAN_ACTIVE_USER_IDX_BMAP_LEN ((WLAN_ACTIVE_USER_MAX_NUM + 7)>> 3)
209
210/*****************************************************************************
211 2.8.2 STA AP规格
212*****************************************************************************/
213/* 通道数 */
214#define WLAN_RF_CHANNEL_NUMS 1
215/* RF PLL个数 */
216#define WLAN_RF_PLL_NUMS 1
217
218#ifdef __cplusplus
219#if __cplusplus
220}
221#endif
222#endif
223
224#endif /* end of file */
225