hc
2024-12-19 9370bb92b2d16684ee45cf24e879c93c509162da
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
/* SPDX-License-Identifier: GPL-2.0 */
/******************************************************************************
 *
 * Copyright(c) 2007 - 2017 Realtek Corporation.
 *
 * This program is free software; you can redistribute it and/or modify it
 * under the terms of version 2 of the GNU General Public License as
 * published by the Free Software Foundation.
 *
 * This program is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
 * more details.
 *
 *****************************************************************************/
#ifndef __HAL_IC_CFG_H__
#define __HAL_IC_CFG_H__
 
#define RTL8188E_SUPPORT                0
#define RTL8812A_SUPPORT                0
#define RTL8821A_SUPPORT                0
#define RTL8723B_SUPPORT                0
#define RTL8723D_SUPPORT                0
#define RTL8192E_SUPPORT                0
#define RTL8192F_SUPPORT                0
#define RTL8814A_SUPPORT                0
#define RTL8195A_SUPPORT                0
#define RTL8197F_SUPPORT                0
#define RTL8703B_SUPPORT                0
#define RTL8188F_SUPPORT                0
#define RTL8822B_SUPPORT                0
#define RTL8821B_SUPPORT                0
#define RTL8821C_SUPPORT                0
#define RTL8710B_SUPPORT                0
#define RTL8814B_SUPPORT                0
#define RTL8824B_SUPPORT                0
#define RTL8198F_SUPPORT                0
#define RTL8195B_SUPPORT                0
#define RTL8822C_SUPPORT                0
#define RTL8721D_SUPPORT                0
#define RTL8812F_SUPPORT                0
#define RTL8197G_SUPPORT                0
#define RTL8721D_SUPPORT                0
 
/*#if (RTL8188E_SUPPORT==1)*/
#define RATE_ADAPTIVE_SUPPORT            0
#define POWER_TRAINING_ACTIVE            0
 
#ifdef CONFIG_MULTIDRV
#endif
 
/*feature for all IC*/
#define RTW_DYNAMIC_RRSR
 
#ifdef CONFIG_RTL8188E
   #undef RTL8188E_SUPPORT
   #undef RATE_ADAPTIVE_SUPPORT
   #undef POWER_TRAINING_ACTIVE
 
   #define RTL8188E_SUPPORT                1
   #define RATE_ADAPTIVE_SUPPORT            1
   #define POWER_TRAINING_ACTIVE            1
#endif
 
#ifdef CONFIG_RTL8812A
   #undef RTL8812A_SUPPORT
   #define RTL8812A_SUPPORT                1
   #ifndef CONFIG_FW_C2H_PKT
       #define CONFIG_FW_C2H_PKT
   #endif
   #ifdef CONFIG_BEAMFORMING
       #define CONFIG_BEAMFORMER_FW_NDPA
       #define BEAMFORMING_SUPPORT        1    /*for phydm beamforming*/
       #define SUPPORT_MU_BF                0
   #endif /*CONFIG_BEAMFORMING*/
   #define CONFIG_RTS_FULL_BW
#endif
 
#ifdef CONFIG_RTL8821A
   #undef RTL8821A_SUPPORT
   #define RTL8821A_SUPPORT                1
   #ifndef CONFIG_FW_C2H_PKT
       #define CONFIG_FW_C2H_PKT
   #endif
   #ifdef CONFIG_BEAMFORMING
       #define CONFIG_BEAMFORMER_FW_NDPA
       #define BEAMFORMING_SUPPORT        1    /*for phydm beamforming*/
       #define SUPPORT_MU_BF                0
   #endif
   #define CONFIG_RTS_FULL_BW
#endif
 
#ifdef CONFIG_RTL8192E
   #undef RTL8192E_SUPPORT
   #define RTL8192E_SUPPORT                1
   #ifndef CONFIG_FW_C2H_PKT
       #define CONFIG_FW_C2H_PKT
   #endif
   #define CONFIG_RTS_FULL_BW
#endif
 
#ifdef CONFIG_RTL8192F
   #undef RTL8192F_SUPPORT
   #define RTL8192F_SUPPORT                1
   #ifndef CONFIG_FW_C2H_PKT
       #define CONFIG_FW_C2H_PKT
   #endif
   #ifndef CONFIG_RTW_MAC_HIDDEN_RPT
       #define CONFIG_RTW_MAC_HIDDEN_RPT
   #endif
   /*#define CONFIG_AMPDU_PRETX_CD*/
   /*#define DBG_LA_MODE*/
   #ifdef CONFIG_P2P_PS
       #define CONFIG_P2P_PS_NOA_USE_MACID_SLEEP
   #endif
   #define CONFIG_RTS_FULL_BW
#endif
 
#ifdef CONFIG_RTL8723B
   #undef RTL8723B_SUPPORT
   #define RTL8723B_SUPPORT                1
   #ifndef CONFIG_FW_C2H_PKT
       #define CONFIG_FW_C2H_PKT
   #endif
   #define CONFIG_RTS_FULL_BW
#endif
 
#ifdef CONFIG_RTL8723D
   #undef RTL8723D_SUPPORT
   #define RTL8723D_SUPPORT                1
   #ifndef CONFIG_FW_C2H_PKT
       #define CONFIG_FW_C2H_PKT
   #endif
   #ifndef CONFIG_RTW_MAC_HIDDEN_RPT
       #define CONFIG_RTW_MAC_HIDDEN_RPT
   #endif
   #ifndef CONFIG_RTW_CUSTOMER_STR
       #define CONFIG_RTW_CUSTOMER_STR
   #endif
   #define CONFIG_RTS_FULL_BW
#endif
 
#ifdef CONFIG_RTL8814A
   #undef RTL8814A_SUPPORT
   #define RTL8814A_SUPPORT                1
   #ifndef CONFIG_FW_C2H_PKT
       #define CONFIG_FW_C2H_PKT
   #endif
   #define CONFIG_FW_CORRECT_BCN
   #ifdef CONFIG_BEAMFORMING
       #define BEAMFORMING_SUPPORT        1    /*for phydm beamforming*/
       #define SUPPORT_MU_BF                0
   #endif
   #define CONFIG_RTS_FULL_BW
#endif
 
#ifdef CONFIG_RTL8703B
   #undef RTL8703B_SUPPORT
   #define RTL8703B_SUPPORT                1
   #ifndef CONFIG_FW_C2H_PKT
       #define CONFIG_FW_C2H_PKT
   #endif
   #ifndef CONFIG_RTW_MAC_HIDDEN_RPT
       #define CONFIG_RTW_MAC_HIDDEN_RPT
   #endif
   #define CONFIG_RTS_FULL_BW
#endif
 
#ifdef CONFIG_RTL8188F
   #undef RTL8188F_SUPPORT
   #define RTL8188F_SUPPORT                1
   #ifndef CONFIG_FW_C2H_PKT
       #define CONFIG_FW_C2H_PKT
   #endif
   #ifndef CONFIG_RTW_MAC_HIDDEN_RPT
       #define CONFIG_RTW_MAC_HIDDEN_RPT
   #endif
   #ifndef CONFIG_RTW_CUSTOMER_STR
       #define CONFIG_RTW_CUSTOMER_STR
   #endif
   #define CONFIG_RTS_FULL_BW
#endif
 
#ifdef CONFIG_RTL8188GTV
   #undef RTL8188F_SUPPORT
   #define RTL8188F_SUPPORT                1
   #ifndef CONFIG_FW_C2H_PKT
       #define CONFIG_FW_C2H_PKT
   #endif
   #ifndef CONFIG_RTW_MAC_HIDDEN_RPT
       #define CONFIG_RTW_MAC_HIDDEN_RPT
   #endif
   #ifndef CONFIG_RTW_CUSTOMER_STR
       #define CONFIG_RTW_CUSTOMER_STR
   #endif
   #define CONFIG_RTS_FULL_BW
   #ifndef CONFIG_FW_OFFLOAD_SET_TXPWR_IDX
       #define CONFIG_FW_OFFLOAD_SET_TXPWR_IDX
   #endif
#endif
 
#ifdef CONFIG_RTL8822B
   #undef RTL8822B_SUPPORT
   #define RTL8822B_SUPPORT                1
   #ifndef CONFIG_FW_C2H_PKT
       #define CONFIG_FW_C2H_PKT
   #endif /* CONFIG_FW_C2H_PKT */
   #define RTW_TX_PA_BIAS    /* Adjust TX PA Bias from eFuse */
   #define CONFIG_DFS    /* Enable 5G band 2&3 channel */
   #define RTW_AMPDU_AGG_RETRY_AND_NEW
 
   #ifdef CONFIG_WOWLAN
       #define CONFIG_GTK_OL
       /*#define CONFIG_ARP_KEEP_ALIVE*/
 
       #ifdef CONFIG_GPIO_WAKEUP
           #ifndef WAKEUP_GPIO_IDX
               #define WAKEUP_GPIO_IDX    6    /* WIFI Chip Side */
           #endif /* !WAKEUP_GPIO_IDX */
       #endif /* CONFIG_GPIO_WAKEUP */
   #endif /* CONFIG_WOWLAN */
 
   #ifdef CONFIG_CONCURRENT_MODE
       #define CONFIG_AP_PORT_SWAP
       #define CONFIG_FW_MULTI_PORT_SUPPORT
   #endif /* CONFIG_CONCURRENT_MODE */
 
   /*
    * Beamforming related definition
    */
   /* Only support new beamforming mechanism */
   #ifdef CONFIG_BEAMFORMING
       #define RTW_BEAMFORMING_VERSION_2
   #endif /* CONFIG_BEAMFORMING */
 
   #ifndef CONFIG_RTW_MAC_HIDDEN_RPT
       #define CONFIG_RTW_MAC_HIDDEN_RPT
   #endif /* CONFIG_RTW_MAC_HIDDEN_RPT */
 
   #ifndef DBG_RX_DFRAME_RAW_DATA
       #define DBG_RX_DFRAME_RAW_DATA
   #endif /* DBG_RX_DFRAME_RAW_DATA */
 
   #ifndef RTW_IQK_FW_OFFLOAD
       #define RTW_IQK_FW_OFFLOAD
   #endif /* RTW_IQK_FW_OFFLOAD */
 
   /* Checksum offload feature */
   /*#define CONFIG_TCP_CSUM_OFFLOAD_TX*/ /* not ready */
   #define CONFIG_TCP_CSUM_OFFLOAD_RX
 
   #define CONFIG_ADVANCE_OTA
 
   #ifdef CONFIG_MCC_MODE
       #define CONFIG_MCC_MODE_V2
       #define CONFIG_MCC_PHYDM_OFFLOAD
   #endif /* CONFIG_MCC_MODE */
 
   #if defined(CONFIG_TDLS) && defined(CONFIG_TDLS_CH_SW)
       #define CONFIG_TDLS_CH_SW_V2
   #endif
 
   #ifndef RTW_CHANNEL_SWITCH_OFFLOAD
       #ifdef CONFIG_TDLS_CH_SW_V2
           #define RTW_CHANNEL_SWITCH_OFFLOAD
       #endif
   #endif /* RTW_CHANNEL_SWITCH_OFFLOAD */
 
   #if defined(CONFIG_RTW_MESH) && !defined(RTW_PER_CMD_SUPPORT_FW)
       /* Supported since fw v22.1 */
       #define RTW_PER_CMD_SUPPORT_FW
   #endif /* RTW_PER_CMD_SUPPORT_FW */
   #define CONFIG_SUPPORT_FIFO_DUMP
   #define CONFIG_HW_P0_TSF_SYNC
   #define CONFIG_BCN_RECV_TIME
   #ifdef CONFIG_P2P_PS
       #define CONFIG_P2P_PS_NOA_USE_MACID_SLEEP
   #endif
   #define CONFIG_RTS_FULL_BW
#endif /* CONFIG_RTL8822B */
 
#ifdef CONFIG_RTL8822C
   #undef RTL8822C_SUPPORT
   #define RTL8822C_SUPPORT                1
   #define DBG_LA_MODE
   #ifndef CONFIG_FW_C2H_PKT
       #define CONFIG_FW_C2H_PKT
   #endif /* CONFIG_FW_C2H_PKT */
   #define RTW_TX_PA_BIAS    /* Adjust TX PA Bias from eFuse */
   #define CONFIG_DFS    /* Enable 5G band 2&3 channel */
 
   #ifdef CONFIG_WOWLAN
       #define CONFIG_GTK_OL
       /*#define CONFIG_ARP_KEEP_ALIVE*/
 
       #ifdef CONFIG_GPIO_WAKEUP
           #ifndef WAKEUP_GPIO_IDX
               #define WAKEUP_GPIO_IDX    6    /* WIFI Chip Side */
           #endif /* !WAKEUP_GPIO_IDX */
       #endif /* CONFIG_GPIO_WAKEUP */
   #endif /* CONFIG_WOWLAN */
 
   #ifdef CONFIG_CONCURRENT_MODE
       #define CONFIG_AP_PORT_SWAP
       #define CONFIG_FW_MULTI_PORT_SUPPORT
   #endif /* CONFIG_CONCURRENT_MODE */
 
   /*
    * Beamforming related definition
    */
   /* Only support new beamforming mechanism */
   #ifdef CONFIG_BEAMFORMING
       #define RTW_BEAMFORMING_VERSION_2
   #endif /* CONFIG_BEAMFORMING */
 
   #ifndef CONFIG_RTW_MAC_HIDDEN_RPT
       #define CONFIG_RTW_MAC_HIDDEN_RPT
   #endif /* CONFIG_RTW_MAC_HIDDEN_RPT */
 
   #ifndef DBG_RX_DFRAME_RAW_DATA
       #define DBG_RX_DFRAME_RAW_DATA
   #endif /* DBG_RX_DFRAME_RAW_DATA */
 
   #ifndef RTW_IQK_FW_OFFLOAD
       /* #define RTW_IQK_FW_OFFLOAD */
   #endif /* RTW_IQK_FW_OFFLOAD */
 
   /* Checksum offload feature */
   /* #define CONFIG_TX_CSUM_OFFLOAD */
   #if defined(CONFIG_TX_CSUM_OFFLOAD) && !defined(CONFIG_RTW_NETIF_SG)
       #define CONFIG_RTW_NETIF_SG
   #endif
   #define CONFIG_TCP_CSUM_OFFLOAD_RX
 
   #define CONFIG_ADVANCE_OTA
 
   #ifdef CONFIG_MCC_MODE
       #define CONFIG_MCC_MODE_V2
   #endif /* CONFIG_MCC_MODE */
 
   #if defined(CONFIG_TDLS) && defined(CONFIG_TDLS_CH_SW)
       #define CONFIG_TDLS_CH_SW_V2
   #endif
 
   #ifndef RTW_CHANNEL_SWITCH_OFFLOAD
       #ifdef CONFIG_TDLS_CH_SW_V2
           #define RTW_CHANNEL_SWITCH_OFFLOAD
       #endif
   #endif /* RTW_CHANNEL_SWITCH_OFFLOAD */
 
   #if defined(CONFIG_RTW_MESH) && !defined(RTW_PER_CMD_SUPPORT_FW)
       /* Supported since fw v22.1 */
       #define RTW_PER_CMD_SUPPORT_FW
   #endif /* RTW_PER_CMD_SUPPORT_FW */
   #define CONFIG_SUPPORT_FIFO_DUMP
   #define CONFIG_HW_P0_TSF_SYNC
   #define CONFIG_BCN_RECV_TIME
#endif /* CONFIG_RTL8822C */
 
#ifdef CONFIG_RTL8821C
   #undef RTL8821C_SUPPORT
   #define RTL8821C_SUPPORT                1
   #ifndef CONFIG_FW_C2H_PKT
       #define CONFIG_FW_C2H_PKT
   #endif
   #ifdef CONFIG_NO_FW
       #ifdef CONFIG_RTW_MAC_HIDDEN_RPT
           #undef CONFIG_RTW_MAC_HIDDEN_RPT
       #endif
   #else
       #ifndef CONFIG_RTW_MAC_HIDDEN_RPT
           #define CONFIG_RTW_MAC_HIDDEN_RPT
       #endif
   #endif
   #define LOAD_FW_HEADER_FROM_DRIVER
   #define CONFIG_PHY_CAPABILITY_QUERY
   #ifdef CONFIG_CONCURRENT_MODE
   #define CONFIG_AP_PORT_SWAP
   #define CONFIG_FW_MULTI_PORT_SUPPORT
   #endif
   #define CONFIG_SUPPORT_FIFO_DUMP
   #ifndef RTW_IQK_FW_OFFLOAD
       #define RTW_IQK_FW_OFFLOAD
   #endif /* RTW_IQK_FW_OFFLOAD */
   /*#define CONFIG_AMPDU_PRETX_CD*/
   /*#define DBG_PRE_TX_HANG*/
 
   /* Beamforming related definition */
   /* Only support new beamforming mechanism */
   #ifdef CONFIG_BEAMFORMING
       #define RTW_BEAMFORMING_VERSION_2
   #endif /* CONFIG_BEAMFORMING */
   #define CONFIG_HW_P0_TSF_SYNC
   #define CONFIG_BCN_RECV_TIME
   #ifdef CONFIG_P2P_PS
       #define CONFIG_P2P_PS_NOA_USE_MACID_SLEEP
   #endif
   #define CONFIG_RTS_FULL_BW
#endif /*CONFIG_RTL8821C*/
 
#ifdef CONFIG_RTL8710B
   #undef RTL8710B_SUPPORT
   #define RTL8710B_SUPPORT                1
   #ifndef CONFIG_FW_C2H_PKT
       #define CONFIG_FW_C2H_PKT
   #endif
   #define CONFIG_RTS_FULL_BW
#endif
 
#endif /*__HAL_IC_CFG_H__*/