1 /*
2 * Copyright (c) 2021 Chipsea Technologies (Shenzhen) Corp., Ltd. All rights reserved.
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 */
15 #include "rwnx_utils.h"
16 #include "system.h"
17
18 typedef struct {
19 uint8_t cs_tkip_conf;
20 uint8_t send_bar;
21 uint8_t new_backoff_bw_rise_en;
22 uint8_t wdt_en;
23 } wifi_feature_param_t;
24
25 typedef struct {
26 uint8_t beacon_linkloss_thd;
27 uint8_t ps_tx_error_max;
28 uint16_t bam_inactivity_to_duration;
29 uint32_t mm_keep_alive_period;
30 uint32_t default_assocrsp_timeout;
31 uint32_t default_authrsp_timeout;
32 uint32_t scan_active_duration;
33 uint32_t scan_passive_duration;
34 uint32_t tx_ac0_timeout;
35 uint32_t tx_ac1_timeout;
36 uint32_t tx_ac2_timeout;
37 uint32_t tx_ac3_timeout;
38 uint32_t tx_bcn_timeout;
39 uint32_t tx_hiq_timeout;
40 uint16_t sdio_rx_buf_num_threshold;
41 uint16_t sdio_rx_buf_rep_threshold;
42 uint16_t deepsleep_notallowed_offset;
43 uint16_t ps_activity_to_us;
44 uint16_t ps_activity_bcmc_to_us;
45 uint16_t ps_activity_uc_to_us;
46 uint16_t lp_wakeup_offset;
47 uint8_t tx_he_tb_prog_time;
48 uint8_t tx_agg_finish_dur;
49 } thresh_param_t;
50
51 typedef struct {
52 uint8_t host_type;
53 uint16_t sdio_desc_cnt;
54 uint16_t pkt_cnt_128;
55 uint16_t pkt_cnt_1600;
56 uint16_t pkt_cnt_1724;
57 uint32_t ipc_base_addr;
58 uint32_t buf_base_addr;
59 uint32_t desc_base_addr;
60 uint32_t desc_size;
61 uint32_t pkt_base_addr;
62 uint32_t pkt_size;
63 uint32_t txdesc_cnt[5];
64 uint32_t reord_buf_size;
65 } host_if_param_t;
66
67 typedef struct {
68 uint32_t rx_ringbuf_start1;
69 uint32_t rx_ringbuf_size1;
70 uint32_t rx_ringbuf_start2;
71 uint32_t rx_ringbuf_size2;
72 } rx_ringbuf_conf_t;
73
74 typedef struct {
75 uint32_t ac_param[4];
76 } ac_param_conf_t;
77
78 typedef struct {
79 uint8_t fix_txgain_en;
80 uint8_t fix_txgain_val;
81 uint8_t fix_txgain_val_5g;
82 uint8_t fix_1024qam_txgain;
83 } txgain_conf_t;
84
85 typedef struct {
86 wifi_feature_param_t wifi_feature_param;
87 thresh_param_t thresh_param;
88 host_if_param_t host_if_param;
89 rx_ringbuf_conf_t rx_ringbuf_conf;
90 ac_param_conf_t ac_param_conf;
91 uint32_t clkgate_en_config;
92 uint32_t uart_config;
93 uint8_t lp_level;
94 uint8_t bt_use_wifi_rf;
95 uint16_t debug_mask;
96 txgain_conf_t txgain_config;
97 uint16_t pwr_close_sysdelay;
98 uint16_t pwr_open_sysdelay;
99 uint8_t use_5g;
100 uint8_t clkgate_use_hwbcn;
101 uint8_t poweroff_use_hwbcn;
102 #if (CFG_ROM_VER >= 3)
103 //append configuration for u03
104 uint8_t fix_txgain_val_24g_11b;
105 uint8_t sdio_send_ampdu;
106 uint8_t sdio_send_ampdu_blkcnt_thresh;
107 #endif
108 } wifi_settings_t;
109
110 #define JUMP_TABLE_BASE_U02 0x00171A30
111 #define KE_EVT_HDLR_BASE_U02 0x001720C4
112 #define JUMP_TABLE_BASE_U03 0x00171A3C
113 #define KE_EVT_HDLR_BASE_U03 0x001720E0
114 #define SCANU_SCANING_BASE_U03 0x00172438
115
116 #define JUMP_TABLE_BASEx(v) MCAT(JUMP_TABLE_BASE_U0, v)
117 #define JUMP_TABLE_BASE JUMP_TABLE_BASEx(CFG_ROM_VER)
118 #define KE_EVT_HDLR_BASEx(v) MCAT(KE_EVT_HDLR_BASE_U0, v)
119 #define KE_EVT_HDLR_BASE KE_EVT_HDLR_BASEx(CFG_ROM_VER)
120
121 #define WIFI_SETTINGS_OFST(mem) (((uint32_t) &((wifi_settings_t *)0)->mem) & ~0x03UL)
122 #define JUMP_TABLE_OFSTx(i,v) ((uint32_t)(MCAT(JUMP_TABLE_BASE_U0, v)+(i)*4))
123 #define JUMP_TABLE_OFST(i) JUMP_TABLE_OFSTx(i, CFG_ROM_VER)
124 #define KE_EVT_HDLR_OFSTx(i,v) ((uint32_t)(MCAT(KE_EVT_HDLR_BASE_U0, v)+(i)*8))
125 #define KE_EVT_HDLR_OFST(i) KE_EVT_HDLR_OFSTx(i, CFG_ROM_VER)
126 #define SCANU_SCANING_OFSTx(i,v) ((uint32_t)(MCAT(SCANU_SCANING_BASE_U0, v)+(i)*8 + 4))
127
128 uint32_t VAR_WITH_VERx(patch_tbl, 2)[][2] =
129 {
130 {WIFI_SETTINGS_OFST(thresh_param.lp_wakeup_offset), 0x080503e8}, // .lp_wakeup_offset = 1000, .tx_he_tb_prog_time = 5, .tx_agg_finish_dur = 8
131 {WIFI_SETTINGS_OFST(host_if_param.host_type), 0x00000003}, // .host_type = 3,.sdio_desc_cnt = 0
132 {WIFI_SETTINGS_OFST(host_if_param.pkt_cnt_128), 0x00000000}, // .pkt_cnt_128, .pkt_cnt_1600 = 0
133 #if PLF_WIFI_AUDIO
134 #ifdef CFG_SOFTAP
135 {WIFI_SETTINGS_OFST(host_if_param.pkt_cnt_1724), 0x00000011},
136 #else
137 {WIFI_SETTINGS_OFST(host_if_param.pkt_cnt_1724), 0x00000011},
138 #endif
139 #else
140 {WIFI_SETTINGS_OFST(host_if_param.pkt_cnt_1724), 0x00000011},
141 #endif
142 {WIFI_SETTINGS_OFST(host_if_param.buf_base_addr), 0x00000000},
143 {WIFI_SETTINGS_OFST(host_if_param.desc_base_addr), 0x00000000},
144 {WIFI_SETTINGS_OFST(host_if_param.desc_size), 0x00000000},
145 {WIFI_SETTINGS_OFST(host_if_param.pkt_size), 0x00007800},
146 #if (PLF_BT_STACK || PLF_BLE_STACK) && (PLF_WIFI_STACK)
147 {WIFI_SETTINGS_OFST(host_if_param.ipc_base_addr), 0x00190000},
148 {WIFI_SETTINGS_OFST(host_if_param.pkt_base_addr), 0x00190800},
149 #else
150 {WIFI_SETTINGS_OFST(host_if_param.ipc_base_addr), 0x00190000},
151 {WIFI_SETTINGS_OFST(host_if_param.pkt_base_addr), 0x00190800},
152 #endif
153 {WIFI_SETTINGS_OFST(host_if_param.txdesc_cnt[0]), NX_TXDESC_CNT0},
154 {WIFI_SETTINGS_OFST(host_if_param.txdesc_cnt[1]), NX_TXDESC_CNT1},
155 {WIFI_SETTINGS_OFST(host_if_param.txdesc_cnt[2]), NX_TXDESC_CNT2},
156 {WIFI_SETTINGS_OFST(host_if_param.txdesc_cnt[3]), NX_TXDESC_CNT3},
157 {WIFI_SETTINGS_OFST(host_if_param.txdesc_cnt[4]), NX_TXDESC_CNT4},
158 {WIFI_SETTINGS_OFST(host_if_param.reord_buf_size), NX_REORD_BUF_SIZE},
159 {WIFI_SETTINGS_OFST(rx_ringbuf_conf.rx_ringbuf_start1), 0x00000000},
160 {WIFI_SETTINGS_OFST(rx_ringbuf_conf.rx_ringbuf_start2), 0x00000000},
161 #if FRAMES_11MBPS_ENABLED
162 #if defined(CFG_WIFI_VOICE_ROLE_DONGLE)
163 {WIFI_SETTINGS_OFST(thresh_param.tx_ac0_timeout), 40000}, // 40ms
164 {WIFI_SETTINGS_OFST(thresh_param.tx_ac1_timeout), 40000}, // 40ms
165 {WIFI_SETTINGS_OFST(thresh_param.tx_ac2_timeout), 40000}, // 40ms
166 {WIFI_SETTINGS_OFST(thresh_param.tx_ac3_timeout), 40000}, // 40ms
167 {WIFI_SETTINGS_OFST(ac_param_conf.ac_param[0]), 0x00000a47},
168 {WIFI_SETTINGS_OFST(ac_param_conf.ac_param[1]), 0x00000643},
169 {WIFI_SETTINGS_OFST(ac_param_conf.ac_param[2]), 0x0005e431},
170 {WIFI_SETTINGS_OFST(ac_param_conf.ac_param[3]), 0x0002f321},
171 #else
172 {WIFI_SETTINGS_OFST(ac_param_conf.ac_param[0]), 0x00000000},
173 {WIFI_SETTINGS_OFST(ac_param_conf.ac_param[1]), 0x00000000},
174 {WIFI_SETTINGS_OFST(ac_param_conf.ac_param[2]), 0x00000000},
175 {WIFI_SETTINGS_OFST(ac_param_conf.ac_param[3]), 0x00000000},
176 #endif
177 #endif /* FRAMES_11MBPS_ENABLED */
178 #if CONFIG_SLEEP_LEVEL == 0
179 {WIFI_SETTINGS_OFST(lp_level), 0x8d0a0000}, // .lp_level = 0, .bt_use_wifi_rf = 0, .debug_mask=0x8d0a
180 #elif CONFIG_SLEEP_LEVEL == 1
181 {WIFI_SETTINGS_OFST(lp_level), 0xffff0001}, // .lp_level = 1, .bt_use_wifi_rf = 0, .debug_mask=0xffff
182 #elif CONFIG_SLEEP_LEVEL >= 2
183 {WIFI_SETTINGS_OFST(lp_level), 0xffff0002}, // .lp_level = 2, .bt_use_wifi_rf = 0, .debug_mask=0xffff
184 #endif
185 #if PLF_BAND5G
186 // Attention, GPIOs used by 5g fem maybe conflict with audio I2SM.
187 {WIFI_SETTINGS_OFST(txgain_config.fix_txgain_en), 0xd0e0d003}, // .fix_txgain_en = 3, .fix_txgain_val = 0xd0, .fix_txgain_val_5g = 0xe0, .fix_1024qam_txgain = 0xd0
188 {WIFI_SETTINGS_OFST(use_5g), 0x00010001}, // .use_5g = 1, .clkgate_use_hwbcn = 0, .poweroff_use_hwbcn = 1
189 #else
190 {WIFI_SETTINGS_OFST(txgain_config.fix_txgain_en), 0xd0e0f301}, // .fix_txgain_en = 1, .fix_txgain_val = 0xf3, .fix_txgain_val_5g = 0xe0, .fix_1024qam_txgain = 0xd0
191 #endif
192 };
193
194 uint32_t VAR_WITH_VERx(patch_tbl_func, 2)[][2] =
195 {
196 { JUMP_TABLE_OFSTx( 53, 2), 0x001cebdd }, //hal_machw_abs_timer_handler_patch
197 { JUMP_TABLE_OFSTx( 86, 2), 0x001ce10d }, //me_build_associate_req_patch
198 { JUMP_TABLE_OFSTx(136, 2), 0x001ce531 }, //phy_get_rf_gain_idx_patch
199 { JUMP_TABLE_OFSTx(171, 2), 0x001ce595 }, //rxl_payload_transfer_patch
200 { JUMP_TABLE_OFSTx(297, 2), 0x001ce6ad }, //phy_rf_add_config_24g_patch
201 { JUMP_TABLE_OFSTx(299, 2), 0x001ce6bd }, //phy_rf_add_config_5g_patch
202 { KE_EVT_HDLR_OFSTx( 0, 2), 0x001ce77d }, //rwnxl_reset_evt_patch
203 { JUMP_TABLE_OFSTx(106, 2), 0x001ce929 }, //mm_init_patch
204 { JUMP_TABLE_OFSTx(154, 2), 0x001ced15 }, //rc_check_patch
205 { JUMP_TABLE_OFSTx( 97, 2), 0x001cee95 }, //mm_bcn_transmit
206 { JUMP_TABLE_OFSTx( 98, 2), 0x001cefd9 }, //mm_bcn_transmitted
207 };
208
209 uint32_t VAR_WITH_VERx(patch_func, 2)[] =
210 {
211 0x4a0f480e,
212 0x490f6803,
213 0x03fff023,
214 0x03c2f043,
215 0x68136003,
216 0x03fff023,
217 0x03c2f043,
218 0x68036013,
219 0x237ff423,
220 0x233ff443,
221 0x68136003,
222 0x237ff423,
223 0x233ff443,
224 0x601320c2,
225 0x477071c8,
226 0x4033b3ac,
227 0x4033b3d4,
228 0x001cf174,
229 0x61647075,
230 0x20236574,
231 0x2064253d,
232 0x0a0d6425,
233 0x00000000,
234 0x48254b24,
235 0xe92d681b,
236 0x4d2441f0,
237 0x796a4f24,
238 0x1007f995,
239 0x4e23683c,
240 0x030ff003,
241 0xb252441a,
242 0xf06f1a89,
243 0x4299033d,
244 0x4619bfb8,
245 0xfc81fa5f,
246 0x04fff024,
247 0x040cea44,
248 0x6833603c,
249 0x03fff023,
250 0x030cea43,
251 0x683c6033,
252 0xfa5f1ecb,
253 0xf424fc83,
254 0xea44247f,
255 0x603c340c,
256 0xf4236833,
257 0xb24c237f,
258 0x330cea43,
259 0x46216033,
260 0xf66171ec,
261 0x343df8e5,
262 0x4b0ddb0e,
263 0x691a8929,
264 0xf2474b0c,
265 0xf1055430,
266 0xfb04000c,
267 0xf8d32101,
268 0xe8bd31e0,
269 0x471841f0,
270 0x81f0e8bd,
271 0x4032011c,
272 0x001ce048,
273 0x001cf174,
274 0x4033b3ac,
275 0x4033b3d4,
276 0x40501000,
277 0x00171a30,
278 0x4ff0e92d,
279 0x460db08f,
280 0x8f3c9f1a,
281 0x8036f8b7,
282 0x2c004601,
283 0xbf084618,
284 0x46162405,
285 0xf6639107,
286 0xf8b5fda9,
287 0x9b0790ae,
288 0x0910f009,
289 0x0009ea40,
290 0x0240f107,
291 0x9202805c,
292 0xfa1f8018,
293 0x4614f980,
294 0xf0002e00,
295 0x883281d9,
296 0x8872809a,
297 0x88b280da,
298 0x220a811a,
299 0x98184616,
300 0x60011899,
301 0x0c00f04f,
302 0x007ef895,
303 0xf8039107,
304 0x9b07c002,
305 0x0e02f100,
306 0x28007058,
307 0x80bcf040,
308 0xf8959907,
309 0xeb0e20b0,
310 0x23010001,
311 0xf80e9007,
312 0x9b073001,
313 0x46942a08,
314 0xf04fbf28,
315 0xf8830c08,
316 0x9907c001,
317 0xfe8efa1f,
318 0x0a02f10c,
319 0x03b1f105,
320 0xf10cb152,
321 0x44ac0cb1,
322 0x0b01f813,
323 0x1b52185a,
324 0xf802459c,
325 0xd1f70cb0,
326 0x20b0f895,
327 0xeb0a44d6,
328 0x2a080301,
329 0x93074476,
330 0x2332d91b,
331 0x3001f80a,
332 0xf1a29b07,
333 0x70590108,
334 0x0cb1f102,
335 0x44ac9907,
336 0x0e06f1a2,
337 0x03b9f105,
338 0x0b01f813,
339 0x1b52185a,
340 0xf802459c,
341 0xd1f70cb8,
342 0x0301eb0e,
343 0x93074476,
344 0xf419b2b6,
345 0xd17d7f80,
346 0x0f00f1b8,
347 0x9a02d00b,
348 0x46104442,
349 0x0240f1a4,
350 0x1b01f814,
351 0x42841bd2,
352 0xd1f754d1,
353 0xf8d59b07,
354 0x444640e0,
355 0x07e24443,
356 0x9307b2b6,
357 0x4ab4d51a,
358 0xaf0aca07,
359 0x2000c703,
360 0x803aa90a,
361 0x0036f8ad,
362 0x0032f8cd,
363 0x0030f88d,
364 0xa80c1a5b,
365 0xe00122dd,
366 0x2f01f811,
367 0x4288545a,
368 0x9b07d1fa,
369 0x33093609,
370 0x9307b2b6,
371 0xd50507a7,
372 0xf8934ba6,
373 0x07dc3176,
374 0x80daf100,
375 0x7d9b4ba4,
376 0xf0002b01,
377 0xf8d580e1,
378 0x071830e0,
379 0x4a9fd505,
380 0x2176f892,
381 0xf1000751,
382 0x075a80c1,
383 0x4d9bd51a,
384 0x3176f895,
385 0xd515079b,
386 0xa8074c9a,
387 0x3150f8d4,
388 0x44064798,
389 0xf8d48f28,
390 0xf663714c,
391 0xf895fb8b,
392 0x2a042175,
393 0xbf084601,
394 0xa8072203,
395 0xb2b647b8,
396 0xb2864430,
397 0x681a9b18,
398 0x1a9b9b07,
399 0x46309a19,
400 0xb00f8013,
401 0x8ff0e8bd,
402 0x9907307f,
403 0xf1054428,
404 0xf813037f,
405 0x185acb01,
406 0x42981b52,
407 0xcc7ef802,
408 0xe736d1f7,
409 0x22211c59,
410 0x701a9107,
411 0x22029b07,
412 0x91071c59,
413 0x701aa80a,
414 0x0127f10d,
415 0xff8ef642,
416 0x30a4f8d5,
417 0x2028f99d,
418 0x3004f993,
419 0xbfc8429a,
420 0x3028f88d,
421 0xf89d9b07,
422 0x1c592027,
423 0x701a9107,
424 0xf89d9b07,
425 0x1c592028,
426 0x701a9107,
427 0x22249b07,
428 0x91071c59,
429 0x9b07701a,
430 0x461a9303,
431 0x0b01f102,
432 0x30a4f8d5,
433 0xb01cf8cd,
434 0x4a68789b,
435 0xf0402b00,
436 0x23018083,
437 0xa172f892,
438 0x32769304,
439 0x0f00f1ba,
440 0x80bcf000,
441 0x95062100,
442 0x46089101,
443 0x9605468e,
444 0x460d46a1,
445 0xf01378d3,
446 0xd1200302,
447 0xf8b27894,
448 0x2c00c000,
449 0xf6acd173,
450 0x2c48146c,
451 0xf640d86a,
452 0x459c13b4,
453 0x809ff000,
454 0xf6ac4c57,
455 0xfba41367,
456 0x089c4303,
457 0x0387f3c3,
458 0xd0742800,
459 0x0e0eeba4,
460 0x45a69c04,
461 0x3001d173,
462 0x469eb2c0,
463 0x31013206,
464 0x459ab2cb,
465 0x9b01d8d6,
466 0xf1039e05,
467 0x46290e02,
468 0xf38efa5f,
469 0x464c9d06,
470 0xf10b469e,
471 0x92070201,
472 0x1000f88b,
473 0x1c519a07,
474 0x70109107,
475 0x36069a03,
476 0xfa1e7013,
477 0x9b07f686,
478 0xe6f5b2b6,
479 0xa8074b3d,
480 0x3144f8d3,
481 0x44064798,
482 0x30e0f8d5,
483 0xe734b2b6,
484 0xa8074b38,
485 0x3148f8d3,
486 0x4b354798,
487 0x44067d9b,
488 0xb2b62b01,
489 0xaf1ff47f,
490 0x30e4f8b5,
491 0xf43f2b00,
492 0x9b07af1a,
493 0x701a2236,
494 0x22039b07,
495 0x9b07705a,
496 0x20e4f8b5,
497 0xf895805a,
498 0x711a20e6,
499 0x36059b07,
500 0xb2b63305,
501 0xe7069307,
502 0xf8922304,
503 0x9304a173,
504 0xe77b32ca,
505 0x4686b9d8,
506 0x20014605,
507 0x2c01e7a6,
508 0xf5acd1f8,
509 0xf1ac5c9c,
510 0xb2a4040d,
511 0x7f4df5b4,
512 0x4b1dd8f0,
513 0x0c08f1ac,
514 0x430cfba3,
515 0xf3c3089c,
516 0x28000387,
517 0x469ed18a,
518 0x2001461d,
519 0xf10be78e,
520 0x94070401,
521 0x5000f88b,
522 0x9e019c07,
523 0x0c01f104,
524 0x0e02f106,
525 0xc01cf8cd,
526 0x0c02f100,
527 0xfa5f7020,
528 0x9001f08e,
529 0xb01cf8dd,
530 0xfa5f469e,
531 0xe775f08c,
532 0x46162204,
533 0x230ee62b,
534 0xe765461c,
535 0x46502302,
536 0x469e4651,
537 0xbf00e779,
538 0x001cf0fc,
539 0x0017a804,
540 0x0017a984,
541 0x00171a30,
542 0xcccccccd,
543 0xf8934b0c,
544 0xb953302a,
545 0xf8934b0b,
546 0x07c000ac,
547 0xf893d50e,
548 0x700b30ad,
549 0x701323e6,
550 0x4b064770,
551 0x00acf893,
552 0xd5030780,
553 0x30aef893,
554 0x7013700b,
555 0xbf004770,
556 0x00173164,
557 0x0017192c,
558 0x5f6c7872,
559 0x6c796170,
560 0x5f64616f,
561 0x6e617274,
562 0x72656673,
563 0x7461705f,
564 0x00006863,
565 0x21206470,
566 0x554e203d,
567 0x00004c4c,
568 0x4ff0e92d,
569 0x68074c3e,
570 0x881d6824,
571 0xc000f894,
572 0xb100f8df,
573 0xf5b1b083,
574 0x9e0c6fc8,
575 0xeb069301,
576 0xbf280646,
577 0x61c8f44f,
578 0x0f03f1bc,
579 0x4b35bf08,
580 0xeb079000,
581 0xf1061606,
582 0x46900614,
583 0x601ebf08,
584 0xe02d2000,
585 0x0403ebae,
586 0x440c442c,
587 0xb2a41b52,
588 0x2500b291,
589 0x0f03f1bc,
590 0xf5b1d10d,
591 0x460b6f00,
592 0xf44fbf28,
593 0xf0436300,
594 0xf04f4323,
595 0x60b31204,
596 0x613160f1,
597 0x44886172,
598 0xf8dbb3ac,
599 0xf8d73000,
600 0xf9b39004,
601 0x2b003000,
602 0x0a14f109,
603 0xf1bcdb1b,
604 0xd1010f03,
605 0xa020f8c6,
606 0x46564638,
607 0x4621464f,
608 0x4302e9d7,
609 0xfa1f3301,
610 0xb29bfe84,
611 0x020eeba3,
612 0xeb01b292,
613 0x442c0905,
614 0xf8c64591,
615 0x60348004,
616 0x2400dac0,
617 0xf1b9e7c6,
618 0xd1e00f00,
619 0x480f4b0e,
620 0x30c4f8d3,
621 0xf240490e,
622 0x479812d1,
623 0x681b4b08,
624 0xc000f893,
625 0xf1bce7d3,
626 0xd1020f03,
627 0x62344b05,
628 0x9b00605e,
629 0x9b01601f,
630 0xb003801d,
631 0x8ff0e8bd,
632 0x00173274,
633 0x00175aa0,
634 0x00171a30,
635 0x001ce588,
636 0x001ce56c,
637 0x00173250,
638 0x68134a02,
639 0x0380f423,
640 0x47706013,
641 0x40344014,
642 0x4382f241,
643 0xb4104298,
644 0x4b17d825,
645 0x601a4a17,
646 0x4c184917,
647 0x4818680b,
648 0xf0234a18,
649 0x600b6380,
650 0xf023680b,
651 0xf043030f,
652 0x600b0308,
653 0xf0236823,
654 0xf04363c0,
655 0x60236380,
656 0xf85d6803,
657 0xf4434b04,
658 0x60036370,
659 0xf4236813,
660 0x60130300,
661 0xf4436813,
662 0x60130380,
663 0xf2414770,
664 0x42986344,
665 0xbf944b02,
666 0x4a084a07,
667 0xe7d3601a,
668 0x40344030,
669 0x7a2a5008,
670 0x40344038,
671 0x4034403c,
672 0x40580108,
673 0x40344014,
674 0x791b50c8,
675 0x7a2ad0c8,
676 0x786e7772,
677 0x65725f6c,
678 0x5f746573,
679 0x5f747665,
680 0x63746170,
681 0x000a0d68,
682 0x61647075,
683 0x25206574,
684 0x25202c64,
685 0x000a0d64,
686 0x65736572,
687 0x6f642074,
688 0x0a0d656e,
689 0x00000000,
690 0x41f0e92d,
691 0x8310f3ef,
692 0xd40307db,
693 0x4b57b672,
694 0x601a2201,
695 0x49574c56,
696 0x4d576823,
697 0xf44f3301,
698 0x60236080,
699 0xfdc8f660,
700 0x4000f04f,
701 0xfbc6f65f,
702 0x30ecf8d5,
703 0x4b514798,
704 0x68194a51,
705 0x417ff021,
706 0x68196019,
707 0x0110f041,
708 0x69116019,
709 0x69133164,
710 0x2b001acb,
711 0x4e4bdafb,
712 0x2410f8d5,
713 0x4f4a6833,
714 0x7388f443,
715 0x0301f043,
716 0x47906033,
717 0x68134a43,
718 0x0310f023,
719 0x68336013,
720 0x7388f423,
721 0x0301f023,
722 0xf6556033,
723 0xf654fa9d,
724 0x79bbf801,
725 0xd04f2b00,
726 0x681b4b3e,
727 0x2b03781b,
728 0x783bd05a,
729 0xd0472b00,
730 0x797e4b3b,
731 0xf997681a,
732 0xf9973007,
733 0xf8dfe004,
734 0x4838c0f8,
735 0x1000f8dc,
736 0x81e0f8d5,
737 0xf0024d30,
738 0x4416020f,
739 0x4433b276,
740 0xbfa84573,
741 0xfa5f4673,
742 0xf021fe83,
743 0xea4101ff,
744 0xf8cc010e,
745 0x68021000,
746 0x02fff022,
747 0x020eea42,
748 0xf8dc6002,
749 0x1eda1000,
750 0xfe82fa5f,
751 0x217ff421,
752 0x310eea41,
753 0x1000f8cc,
754 0xf8b76802,
755 0xf422c008,
756 0xea42227f,
757 0x6002320e,
758 0x4821692a,
759 0xf64eb25d,
760 0xfb012160,
761 0x71fd210c,
762 0x230047c0,
763 0x71bb481d,
764 0x46324629,
765 0xfcf4f660,
766 0xf44f491b,
767 0xf6606080,
768 0x6823fd3f,
769 0x4a0bb133,
770 0x68123b01,
771 0xb90b6023,
772 0xb662b102,
773 0x81f0e8bd,
774 0x681b4b14,
775 0x601a2200,
776 0xfccef645,
777 0x2b00783b,
778 0x79bbd0e6,
779 0xd19b2b00,
780 0xbf00e7e2,
781 0x0017569c,
782 0x00172600,
783 0x001ce744,
784 0x00171a30,
785 0x40320400,
786 0x40501000,
787 0x40340018,
788 0x001cf174,
789 0x00173274,
790 0x4032011c,
791 0x4033b3d4,
792 0x001cf180,
793 0x001ce75c,
794 0x001ce76c,
795 0x00180000,
796 0x4033b3ac,
797 #if FRAMES_11MBPS_ENABLED
798 0x4d40b570,
799 0x78ab4c40,
800 0xf8d4b913,
801 0x479830e4,
802 0xfceef654,
803 0xff2af653,
804 0xfcc0f653,
805 0xfa16f65d,
806 0xfb76f65b,
807 0xfbe6f65c,
808 0x338cf8d4,
809 0x78ab4798,
810 0x4a374836,
811 0x4503f240,
812 0x61452108,
813 0x2b006151,
814 0xf652d058,
815 0x4d33fc4b,
816 0x781b682b,
817 0xd454079e,
818 0xfe6af657,
819 0xfb82f65d,
820 0x47986e63,
821 0x317cf8d4,
822 0x4b2d4798,
823 0x789a482d,
824 0x4001f993,
825 0x70192101,
826 0x70d92114,
827 0xf3c16801,
828 0xf0410115,
829 0x3a147120,
830 0xb2526001,
831 0x013df06f,
832 0xbfb8428a,
833 0x42a2460a,
834 0x00c2f04f,
835 0x682971d8,
836 0x62184821,
837 0x4622bfa8,
838 0x4c20260a,
839 0xf44f715e,
840 0x711a757a,
841 0x811d611c,
842 0x788b481d,
843 0x06dc6802,
844 0xf022bf4c,
845 0xf0424200,
846 0x60024200,
847 0xf0134a19,
848 0x68130f01,
849 0xf443bf14,
850 0xf4232380,
851 0x60132380,
852 0x68134a15,
853 0x6300f043,
854 0x784b6013,
855 0xf5a2b12b,
856 0x68137207,
857 0x0340f043,
858 0xbd706013,
859 0xfbe8f652,
860 0x2003e7a5,
861 0xfffcf645,
862 0xbf00e7a6,
863 0x00173254,
864 0x00171a30,
865 0x001804c4,
866 0x00180484,
867 #else
868 0x4d42b570,
869 0x78ab4c42,
870 0xf8d4b913,
871 0x479830e4,
872 0xfceef654,
873 0xff2af653,
874 0xfcc0f653,
875 0xfa16f65d,
876 0xfb76f65b,
877 0xfbe6f65c,
878 0x338cf8d4,
879 0xbf004798,
880 0xbf00bf00,
881 0xbf00bf00,
882 0xbf00bf00,
883 0xbf00bf00,
884 0xbf00bf00,
885 0x78abbf00,
886 0xd0582b00,
887 0xfc46f652,
888 0x682b4d30,
889 0x079e781b,
890 0xf657d454,
891 0xf65dfe65,
892 0x6e63fb7d,
893 0xf8d44798,
894 0x4798317c,
895 0x482b4b2a,
896 0xf993789a,
897 0x21014001,
898 0x21147019,
899 0x680170d9,
900 0x0115f3c1,
901 0x7120f041,
902 0x60013a14,
903 0xf06fb252,
904 0x428a013d,
905 0x460abfb8,
906 0xf04f42a2,
907 0x71d800c2,
908 0x481f6829,
909 0xbfa86218,
910 0x260a4622,
911 0x715e4c1d,
912 0x757af44f,
913 0x611c711a,
914 0x481b811d,
915 0x6802788b,
916 0xbf4c06dc,
917 0x4200f022,
918 0x4200f042,
919 0x4a176002,
920 0x0f01f013,
921 0xbf146813,
922 0x2380f443,
923 0x2380f423,
924 0x4a136013,
925 0xf0436813,
926 0x60136300,
927 0xb12b784b,
928 0x7207f5a2,
929 0xf0436813,
930 0x60130340,
931 0xf652bd70,
932 0xe7a5fbe3,
933 0xf6452003,
934 0xe7a6fff7,
935 0x00173254,
936 0x00171a30,
937 #endif
938 0x0017324c,
939 0x001cf174,
940 0x403200f0,
941 0x001ce001,
942 0x001ce05d,
943 0x40320480,
944 0x40320310,
945 0x40320440,
946 0x6f727265,
947 0x74203a72,
948 0x65726568,
949 0x20736920,
950 0x6b206f6e,
951 0x69742065,
952 0x2072656d,
953 0x67206e69,
954 0x74206e65,
955 0x72656d69,
956 0x796e6120,
957 0x65726f6d,
958 0x00000a0d,
959 0x6f727265,
960 0x74203a72,
961 0x65726568,
962 0x20736920,
963 0x6d206f6e,
964 0x6974206d,
965 0x2072656d,
966 0x67206e69,
967 0x74206e65,
968 0x72656d69,
969 0x796e6120,
970 0x65726f6d,
971 0x00000a0d,
972 0x69742821,
973 0x5f72656d,
974 0x646e6570,
975 0x20676e69,
976 0x41482026,
977 0x43415f4c,
978 0x49545f30,
979 0x5f52454d,
980 0x29544942,
981 0x00000000,
982 0x69742821,
983 0x5f72656d,
984 0x646e6570,
985 0x20676e69,
986 0x41482026,
987 0x43415f4c,
988 0x49545f31,
989 0x5f52454d,
990 0x29544942,
991 0x00000000,
992 0x69742821,
993 0x5f72656d,
994 0x646e6570,
995 0x20676e69,
996 0x41482026,
997 0x43415f4c,
998 0x49545f32,
999 0x5f52454d,
1000 0x29544942,
1001 0x00000000,
1002 0x69742821,
1003 0x5f72656d,
1004 0x646e6570,
1005 0x20676e69,
1006 0x41482026,
1007 0x43415f4c,
1008 0x49545f33,
1009 0x5f52454d,
1010 0x29544942,
1011 0x00000000,
1012 0x69742821,
1013 0x5f72656d,
1014 0x646e6570,
1015 0x20676e69,
1016 0x41482026,
1017 0x44495f4c,
1018 0x545f454c,
1019 0x52454d49,
1020 0x5449425f,
1021 0x00000029,
1022 0x69742821,
1023 0x5f72656d,
1024 0x646e6570,
1025 0x20676e69,
1026 0x41482026,
1027 0x45485f4c,
1028 0x5f42545f,
1029 0x454d4954,
1030 0x49425f52,
1031 0x00002954,
1032 0x69742821,
1033 0x5f72656d,
1034 0x646e6570,
1035 0x20676e69,
1036 0x41482026,
1037 0x49485f4c,
1038 0x49545f51,
1039 0x5f52454d,
1040 0x29544942,
1041 0x00000000,
1042 0x4b3c4a3b,
1043 0x6814b510,
1044 0x0561601c,
1045 0x05e2d41d,
1046 0x05a3d416,
1047 0x06e0d410,
1048 0x4b37d431,
1049 0xb122781a,
1050 0x0f2ff014,
1051 0x2201bf1c,
1052 0x4b34719a,
1053 0xf9b3681b,
1054 0x2b003000,
1055 0xbd10db0d,
1056 0xf6604831,
1057 0xe7fefb3d,
1058 0xfad4f652,
1059 0xd5e605a3,
1060 0x482ee7f6,
1061 0xfb34f660,
1062 0x07e1e7fe,
1063 0x07a2d41c,
1064 0x0763d442,
1065 0x0720d438,
1066 0x0621d42e,
1067 0x0662d424,
1068 0x06a3d41a,
1069 0xe8bdd5e3,
1070 0x49254010,
1071 0xf2404825,
1072 0xf660326e,
1073 0x2004bcc1,
1074 0xf81ef64d,
1075 0x4180f04f,
1076 0xf64d2004,
1077 0xe7c4f8a7,
1078 0x4010e8bd,
1079 0x481e491c,
1080 0x3265f240,
1081 0xbcb0f660,
1082 0x4010e8bd,
1083 0x481b4918,
1084 0x725bf44f,
1085 0xbca8f660,
1086 0x4010e8bd,
1087 0x48184914,
1088 0x326af240,
1089 0xbca0f660,
1090 0x4010e8bd,
1091 0x48154910,
1092 0x725af44f,
1093 0xbc98f660,
1094 0x4010e8bd,
1095 0x4812490c,
1096 0x3267f240,
1097 0xbc90f660,
1098 0x4010e8bd,
1099 0x480f4908,
1100 0x3266f240,
1101 0xbc88f660,
1102 0x40328084,
1103 0x40328088,
1104 0x001cf174,
1105 0x00173250,
1106 0x001cea90,
1107 0x001cea5c,
1108 0x001cf10c,
1109 0x001cebb4,
1110 0x001ceac4,
1111 0x001ceb8c,
1112 0x001ceb64,
1113 0x001ceb3c,
1114 0x001ceb14,
1115 0x001ceaec,
1116 0x735f6372,
1117 0x3d212073,
1118 0x4c554e20,
1119 0x0000004c,
1120 0x41f0e92d,
1121 0x602cf890,
1122 0xb0822e09,
1123 0xf2004604,
1124 0x4b4f8081,
1125 0x681a4f4f,
1126 0x1386eb06,
1127 0x2000f9b2,
1128 0x03c3eb07,
1129 0xf8d32a00,
1130 0xea4f5148,
1131 0xdb681886,
1132 0xf8956b62,
1133 0xf3c230a1,
1134 0x07595240,
1135 0x2007f88d,
1136 0xf003d45a,
1137 0x682b02fd,
1138 0xf8854943,
1139 0x690a20a1,
1140 0x33c3f503,
1141 0x429333a0,
1142 0x1ad1d862,
1143 0xda042900,
1144 0x43d2493e,
1145 0x428b4413,
1146 0x2100d95e,
1147 0xf66d4628,
1148 0xf895fb85,
1149 0x493830a2,
1150 0x22003301,
1151 0x0303f003,
1152 0x30a2f885,
1153 0x209bf885,
1154 0x20a3f885,
1155 0x602a690a,
1156 0xf884009b,
1157 0xb1903046,
1158 0x0107f10d,
1159 0xf66c4628,
1160 0xf89dfedb,
1161 0x2b003007,
1162 0xeb08d04c,
1163 0xeb070306,
1164 0xf89303c3,
1165 0xf0422152,
1166 0xf8830211,
1167 0x46282152,
1168 0xf910f66d,
1169 0x8de2b1a8,
1170 0x3046f894,
1171 0x1007f89d,
1172 0x5200f442,
1173 0x0303f023,
1174 0xf88485e2,
1175 0xbb613046,
1176 0xeb074446,
1177 0xf89707c6,
1178 0xf0433152,
1179 0xf8870320,
1180 0xb0023152,
1181 0x81f0e8bd,
1182 0xd0a22a00,
1183 0x0202f043,
1184 0x2d00e7a1,
1185 0x4916d194,
1186 0xf2404816,
1187 0xf660329a,
1188 0xe78dfc0d,
1189 0xf8802300,
1190 0xb0023046,
1191 0x81f0e8bd,
1192 0x1a9b4911,
1193 0xd8a0428b,
1194 0x20a2f895,
1195 0x30a3f895,
1196 0x0382ea43,
1197 0x3046f884,
1198 0x6b63e7c1,
1199 0x1320f443,
1200 0xe7cd6363,
1201 0xf4236b63,
1202 0x63631300,
1203 0xbf00e7ad,
1204 0x00173250,
1205 0x00175aa8,
1206 0x40501000,
1207 0x0001869f,
1208 0x001cf130,
1209 0x001ced04,
1210 0x000186a0,
1211 0x5f6d6d21,
1212 0x5f6e6362,
1213 0x2e766e65,
1214 0x635f7874,
1215 0x00006d66,
1216 0x4ff8e92d,
1217 0x4a414b40,
1218 0x6894681b,
1219 0x3000f9b3,
1220 0x2b004e3f,
1221 0x7a75db41,
1222 0xd14a2d00,
1223 0x72354a3d,
1224 0x017f6817,
1225 0xf8dfb16c,
1226 0xf8df90f8,
1227 0x46aa80f8,
1228 0x0b01f04f,
1229 0x3062f894,
1230 0xd0042b02,
1231 0x2c006824,
1232 0xe8bdd1f8,
1233 0xf8948ff8,
1234 0x2b0030da,
1235 0xf894d0f6,
1236 0x2b003064,
1237 0xf894d0f2,
1238 0xf89420d9,
1239 0x429a30d8,
1240 0xf8d9d1ec,
1241 0x46203170,
1242 0xb1204798,
1243 0x3000f898,
1244 0xf8883301,
1245 0xf1bb3000,
1246 0xd0050f00,
1247 0x0232f1a7,
1248 0x33b6f640,
1249 0xd818429a,
1250 0x4620b9d5,
1251 0xfe6ef65a,
1252 0xb9f04683,
1253 0x5000f888,
1254 0x6873e7d0,
1255 0xd0ba2b00,
1256 0x481e491d,
1257 0x727af44f,
1258 0xfb80f660,
1259 0x2d007a75,
1260 0x2301d0b4,
1261 0xe8bd7233,
1262 0x46208ff8,
1263 0xfe56f65a,
1264 0xa000f888,
1265 0xf04f6824,
1266 0x25010b00,
1267 0xd1b12c00,
1268 0xf894e7b7,
1269 0xf8843063,
1270 0x23ff3097,
1271 0x3098f884,
1272 0xf1042104,
1273 0xf64d006c,
1274 0x6873ff9b,
1275 0x3301b108,
1276 0x2b016073,
1277 0xf04fd002,
1278 0xe79f0b00,
1279 0xfc82f655,
1280 0x0b00f04f,
1281 0xbf00e79a,
1282 0x00173250,
1283 0x00177720,
1284 0x00178bf8,
1285 0x40328040,
1286 0x001cf140,
1287 0x001cee80,
1288 0x00171a30,
1289 0x001cf1a0,
1290 0x625f6d6d,
1291 0x655f6e63,
1292 0x742e766e,
1293 0x66635f78,
1294 0x0000006d,
1295 0x6d5f6362,
1296 0x000a0d63,
1297 0x43f8e92d,
1298 0x4c3f4b3e,
1299 0x6865681b,
1300 0x3000f9b3,
1301 0x46072b00,
1302 0x3d01db04,
1303 0xb1756065,
1304 0x83f8e8bd,
1305 0xd1f82d00,
1306 0x48394938,
1307 0x4257f240,
1308 0xfb1cf660,
1309 0x3d016865,
1310 0x2d006065,
1311 0x4e35d1f0,
1312 0xfc9af655,
1313 0xbb4b7833,
1314 0xbb037aa3,
1315 0xb16368e3,
1316 0x80c8f8df,
1317 0xf8d84e30,
1318 0x463051d4,
1319 0xf844f65f,
1320 0x47a8300c,
1321 0x2b0068e3,
1322 0xf897d1f5,
1323 0x44040063,
1324 0xb1197d21,
1325 0xf8d34b29,
1326 0x47983190,
1327 0x30dff897,
1328 0xd1cd2b01,
1329 0xe8bd4638,
1330 0xf65343f8,
1331 0xf8dfbf8b,
1332 0x6820808c,
1333 0x318cf8d8,
1334 0xe7d74798,
1335 0xf6604820,
1336 0x2303f90f,
1337 0x8063f897,
1338 0x210b462a,
1339 0xf65e204a,
1340 0xf108fb41,
1341 0xfa5f080a,
1342 0xf880f888,
1343 0x70458000,
1344 0xf65e7085,
1345 0x7833fb67,
1346 0xd0bd2b00,
1347 0x1063f897,
1348 0x310a4b14,
1349 0x1181eb01,
1350 0x09c1eb03,
1351 0x3029f899,
1352 0xd50c079b,
1353 0x8034f8df,
1354 0xf8892209,
1355 0xf8d8202a,
1356 0x462a3320,
1357 0x46384649,
1358 0xf8894798,
1359 0x2300502a,
1360 0xe7a17033,
1361 0x00173250,
1362 0x00178bf8,
1363 0x001cf158,
1364 0x001cefbc,
1365 0x001cf1a0,
1366 0x00178c04,
1367 0x00171a30,
1368 0x001cefd0,
1369 0x00175aa8,
1370 0x500007dd,
1371 0x010002f2,
1372 0x00000000,
1373 0x00000000,
1374 0x5f6c6168,
1375 0x6863616d,
1376 0x62615f77,
1377 0x69745f73,
1378 0x5f72656d,
1379 0x646e6168,
1380 0x5f72656c,
1381 0x63746170,
1382 0x00000068,
1383 0x635f6372,
1384 0x6b636568,
1385 0x7461705f,
1386 0x00006863,
1387 0x625f6d6d,
1388 0x745f6e63,
1389 0x736e6172,
1390 0x5f74696d,
1391 0x63746170,
1392 0x00000068,
1393 0x625f6d6d,
1394 0x745f6e63,
1395 0x736e6172,
1396 0x7474696d,
1397 0x705f6465,
1398 0x68637461,
1399 0x00000000,
1400 0x00000000,
1401 0x00000000,
1402 0x00000000,
1403 0x00000000,
1404 0x00000000,
1405 0x00000000,
1406 0x00000000,
1407 0x00000000,
1408 0x00000000,
1409 0x00000000,
1410 0x00000000,
1411 0x00,
1412 };
1413
1414 uint32_t VAR_WITH_VERx(patch_tbl, 3)[][2] =
1415 {
1416 #if PLF_WIFI_AUDIO
1417 {WIFI_SETTINGS_OFST(thresh_param.beacon_linkloss_thd), 0x00003220}, // .bam_inactivity_to_duration0, .ps_tx_error_max = 50 bcn[0x32], .beacon_linkloss_thd = 32 bcn[0x20]
1418 {WIFI_SETTINGS_OFST(thresh_param.deepsleep_notallowed_offset), 0x07D02710}, // .deepsleep_notallowed_offset = 10 * 1000[0x2710], .ps_activity_to_us = 2000[0x07D0]
1419 #else
1420 {WIFI_SETTINGS_OFST(thresh_param.deepsleep_notallowed_offset), 0x4e202710}, // .deepsleep_notallowed_offset = 10 * 1000[0x2710], .ps_activity_to_us = 20000[0x4e20]
1421 #endif
1422 //{WIFI_SETTINGS_OFST(thresh_param.ps_activity_bcmc_to_us), 0x1f400fa0}, // .ps_activity_bcmc_to_us = 4000, .ps_activity_uc_to_us = 8000
1423 {WIFI_SETTINGS_OFST(thresh_param.lp_wakeup_offset), 0x080503e8}, // .lp_wakeup_offset = 1000, .tx_he_tb_prog_time = 5, .tx_agg_finish_dur = 8
1424 {WIFI_SETTINGS_OFST(host_if_param.host_type), 0x00000003}, // .host_type = 3,.sdio_desc_cnt = 0
1425 {WIFI_SETTINGS_OFST(host_if_param.pkt_cnt_128), 0x00000000}, // .pkt_cnt_128, .pkt_cnt_1600 = 0
1426 #if PLF_WIFI_AUDIO
1427 #ifdef CFG_SOFTAP
1428 {WIFI_SETTINGS_OFST(host_if_param.pkt_cnt_1724), 0x00000011},
1429 #else
1430 {WIFI_SETTINGS_OFST(host_if_param.pkt_cnt_1724), 0x00000011},
1431 #endif
1432 #else
1433 {WIFI_SETTINGS_OFST(host_if_param.pkt_cnt_1724), 0x00000011},
1434 #endif
1435 {WIFI_SETTINGS_OFST(host_if_param.buf_base_addr), 0x00000000},
1436 {WIFI_SETTINGS_OFST(host_if_param.desc_base_addr), 0x00000000},
1437 {WIFI_SETTINGS_OFST(host_if_param.desc_size), 0x00000000},
1438 {WIFI_SETTINGS_OFST(host_if_param.pkt_size), 0x00007800},
1439 #if (PLF_BT_STACK || PLF_BLE_STACK) && (PLF_WIFI_STACK)
1440 {WIFI_SETTINGS_OFST(host_if_param.ipc_base_addr), 0x00190000},
1441 {WIFI_SETTINGS_OFST(host_if_param.pkt_base_addr), 0x00190800},
1442 #else
1443 {WIFI_SETTINGS_OFST(host_if_param.ipc_base_addr), 0x00190000},
1444 {WIFI_SETTINGS_OFST(host_if_param.pkt_base_addr), 0x00190800},
1445 #endif
1446 {WIFI_SETTINGS_OFST(host_if_param.txdesc_cnt[0]), NX_TXDESC_CNT0},
1447 {WIFI_SETTINGS_OFST(host_if_param.txdesc_cnt[1]), NX_TXDESC_CNT1},
1448 {WIFI_SETTINGS_OFST(host_if_param.txdesc_cnt[2]), NX_TXDESC_CNT2},
1449 {WIFI_SETTINGS_OFST(host_if_param.txdesc_cnt[3]), NX_TXDESC_CNT3},
1450 {WIFI_SETTINGS_OFST(host_if_param.txdesc_cnt[4]), NX_TXDESC_CNT4},
1451 {WIFI_SETTINGS_OFST(host_if_param.reord_buf_size), NX_REORD_BUF_SIZE},
1452 {WIFI_SETTINGS_OFST(rx_ringbuf_conf.rx_ringbuf_start1), 0x00000000},
1453 {WIFI_SETTINGS_OFST(rx_ringbuf_conf.rx_ringbuf_size1), (24 * 1024)},
1454 {WIFI_SETTINGS_OFST(rx_ringbuf_conf.rx_ringbuf_start2), 0x00000000},
1455 {WIFI_SETTINGS_OFST(rx_ringbuf_conf.rx_ringbuf_size2), (1024 - 12)},
1456 #if FRAMES_11MBPS_ENABLED
1457 #if defined(CFG_WIFI_VOICE_ROLE_DONGLE)
1458 {WIFI_SETTINGS_OFST(thresh_param.tx_ac0_timeout), 20000}, // 20ms
1459 {WIFI_SETTINGS_OFST(thresh_param.tx_ac1_timeout), 20000}, // 20ms
1460 {WIFI_SETTINGS_OFST(thresh_param.tx_ac2_timeout), 20000}, // 20ms
1461 {WIFI_SETTINGS_OFST(thresh_param.tx_ac3_timeout), 20000}, // 20ms
1462 {WIFI_SETTINGS_OFST(ac_param_conf.ac_param[0]), 0x00000a47},
1463 {WIFI_SETTINGS_OFST(ac_param_conf.ac_param[1]), 0x00000643},
1464 {WIFI_SETTINGS_OFST(ac_param_conf.ac_param[2]), 0x0005e431},
1465 {WIFI_SETTINGS_OFST(ac_param_conf.ac_param[3]), 0x0002f321},
1466 #else
1467 {WIFI_SETTINGS_OFST(ac_param_conf.ac_param[0]), 0x00000000},
1468 {WIFI_SETTINGS_OFST(ac_param_conf.ac_param[1]), 0x00000000},
1469 {WIFI_SETTINGS_OFST(ac_param_conf.ac_param[2]), 0x00000000},
1470 {WIFI_SETTINGS_OFST(ac_param_conf.ac_param[3]), 0x00000000},
1471 #endif
1472 #endif /* FRAMES_11MBPS_ENABLED */
1473 #if CONFIG_SLEEP_LEVEL == 0
1474 {WIFI_SETTINGS_OFST(lp_level), 0x8d080000}, // .lp_level = 0, .bt_use_wifi_rf = 0, .debug_mask=0x8d08
1475 #elif CONFIG_SLEEP_LEVEL == 1
1476 {WIFI_SETTINGS_OFST(lp_level), 0xffff0001}, // .lp_level = 1, .bt_use_wifi_rf = 0, .debug_mask=0xffff
1477 #elif CONFIG_SLEEP_LEVEL >= 2
1478 {WIFI_SETTINGS_OFST(lp_level), 0xffff0002}, // .lp_level = 2, .bt_use_wifi_rf = 0, .debug_mask=0xffff
1479 #endif
1480 #if PLF_BAND5G
1481 // Attention, GPIOs used by 5g fem maybe conflict with audio I2SM.
1482 {WIFI_SETTINGS_OFST(txgain_config.fix_txgain_en), 0xd0e0d003}, // .fix_txgain_en = 3, .fix_txgain_val = 0xd0, .fix_txgain_val_5g = 0xe0, .fix_1024qam_txgain = 0xd0
1483 {WIFI_SETTINGS_OFST(use_5g), 0x00010001}, // .use_5g = 1, .clkgate_use_hwbcn = 0, .poweroff_use_hwbcn = 1
1484 #else
1485 {WIFI_SETTINGS_OFST(txgain_config.fix_txgain_en), 0xd0e0f301}, // .fix_txgain_en = 1, .fix_txgain_val = 0xf3, .fix_txgain_val_5g = 0xe0, .fix_1024qam_txgain = 0xd0
1486 #endif
1487 };
1488
1489 uint32_t VAR_WITH_VERx(patch_tbl_func, 3)[][2] =
1490 {
1491 { JUMP_TABLE_OFSTx(154, 3), 0x001ce001 }, //rc_check_patch
1492 { KE_EVT_HDLR_OFSTx( 0, 3), 0x001ce169 }, //rwnxl_reset_evt_patch
1493 { JUMP_TABLE_OFSTx(295, 3), 0x001ce315 }, //hw_reg_config_before_rf_calib_patch
1494 { JUMP_TABLE_OFSTx(146, 3), 0x001ce485 }, //ps_check_tx_frame_patch
1495 { JUMP_TABLE_OFSTx(302, 3), 0x001ce5b5 }, //rwnx_sleep_deepsleep_config_patch
1496 { JUMP_TABLE_OFSTx(196, 3), 0x001ce79d }, //sm_delete_resources_patch
1497 { JUMP_TABLE_OFSTx(256, 3), 0x001ce8a9 }, //txl_hwdesc_config_post_patch
1498 { SCANU_SCANING_OFSTx( 2, 3), 0x001cf591 }, //scan_rxu_mgt_ind_handler_patch
1499 };
1500
1501 uint32_t VAR_WITH_VERx(patch_func, 3)[] =
1502 {
1503 0x041f0e92d,
1504 0x0602cf890,
1505 0x0b0822e09,
1506 0x0d87f4604,
1507 0x04f4f4b4e,
1508 0x0eb06681a,
1509 0x0f9b21386,
1510 0x0eb072000,
1511 0x02a0003c3,
1512 0x05148f8d3,
1513 0x01886ea4f,
1514 0x06b62db68,
1515 0x030a1f895,
1516 0x05240f3c2,
1517 0x0f88d0759,
1518 0x0d45a2007,
1519 0x002fdf003,
1520 0x04943682b,
1521 0x020a1f885,
1522 0x0f503690a,
1523 0x033a033c3,
1524 0x0d8614293,
1525 0x029001ad1,
1526 0x0493eda04,
1527 0x0441343d2,
1528 0x0d95d428b,
1529 0x046282100,
1530 0x0f8e8f66f,
1531 0x030a2f895,
1532 0x033014937,
1533 0x0f0032200,
1534 0x0f8850303,
1535 0x0f88530a2,
1536 0x0f885209b,
1537 0x0690a20a3,
1538 0x0009b602a,
1539 0x03046f884,
1540 0x0f10db190,
1541 0x046280107,
1542 0x0fc3ef66e,
1543 0x03007f89d,
1544 0x0d04b2b00,
1545 0x00306eb08,
1546 0x003c3eb07,
1547 0x02152f893,
1548 0x00211f042,
1549 0x02152f883,
1550 0x0f66e4628,
1551 0x0b1a8fe73,
1552 0x0f8948de2,
1553 0x0f89d3046,
1554 0x0f4421007,
1555 0x0f0235200,
1556 0x085e20303,
1557 0x03046f884,
1558 0x04446bb59,
1559 0x007c6eb07,
1560 0x03152f897,
1561 0x00320f043,
1562 0x03152f887,
1563 0x0e8bdb002,
1564 0x02a0081f0,
1565 0x0f043d0a2,
1566 0x0e7a10202,
1567 0x0d1942d00,
1568 0x048164915,
1569 0x0f661224e,
1570 0x0e78efff7,
1571 0x0f8802300,
1572 0x0b0023046,
1573 0x081f0e8bd,
1574 0x01a9b4911,
1575 0x0d8a1428b,
1576 0x020a2f895,
1577 0x030a3f895,
1578 0x00382ea43,
1579 0x03046f884,
1580 0x06b63e7c2,
1581 0x01320f443,
1582 0x0e7ce6363,
1583 0x0f4236b63,
1584 0x063631300,
1585 0x0bf00e7ae,
1586 0x0001732b0,
1587 0x000176020,
1588 0x040501000,
1589 0x00001869f,
1590 0x0001cf6c4,
1591 0x0001cf5c4,
1592 0x0000186a0,
1593 0x041f0e92d,
1594 0x08310f3ef,
1595 0x0d40307db,
1596 0x04b57b672,
1597 0x0601a2201,
1598 0x049574c56,
1599 0x04d576823,
1600 0x0f44f3301,
1601 0x060236080,
1602 0x0fe08f661,
1603 0x04000f04f,
1604 0x0fc06f660,
1605 0x030ecf8d5,
1606 0x04b514798,
1607 0x068194a51,
1608 0x0417ff021,
1609 0x068196019,
1610 0x00110f041,
1611 0x069116019,
1612 0x069133164,
1613 0x02b001acb,
1614 0x04e4bdafb,
1615 0x02410f8d5,
1616 0x04f4a6833,
1617 0x07388f443,
1618 0x00301f043,
1619 0x047906033,
1620 0x068134a43,
1621 0x00310f023,
1622 0x068336013,
1623 0x07388f423,
1624 0x00301f023,
1625 0x0f6566033,
1626 0x0f655fadb,
1627 0x079bbf847,
1628 0x0d04f2b00,
1629 0x0681b4b3e,
1630 0x02b03781b,
1631 0x0783bd05a,
1632 0x0d0472b00,
1633 0x0797e4b3b,
1634 0x0f997681a,
1635 0x0f9973007,
1636 0x0f8dfe004,
1637 0x04838c0f8,
1638 0x01000f8dc,
1639 0x081e0f8d5,
1640 0x0f0024d30,
1641 0x04416020f,
1642 0x04433b276,
1643 0x0bfa84573,
1644 0x0fa5f4673,
1645 0x0f021fe83,
1646 0x0ea4101ff,
1647 0x0f8cc010e,
1648 0x068021000,
1649 0x002fff022,
1650 0x0020eea42,
1651 0x0f8dc6002,
1652 0x01eda1000,
1653 0x0fe82fa5f,
1654 0x0217ff421,
1655 0x0310eea41,
1656 0x01000f8cc,
1657 0x0f8b76802,
1658 0x0f422c008,
1659 0x0ea42227f,
1660 0x06002320e,
1661 0x04821692a,
1662 0x0f64eb25d,
1663 0x0fb012160,
1664 0x071fd210c,
1665 0x0230047c0,
1666 0x071bb481d,
1667 0x046324629,
1668 0x0fd34f661,
1669 0x0f44f491b,
1670 0x0f6616080,
1671 0x06823fd7f,
1672 0x04a0bb133,
1673 0x068123b01,
1674 0x0b90b6023,
1675 0x0b662b102,
1676 0x081f0e8bd,
1677 0x0681b4b14,
1678 0x0601a2200,
1679 0x0f826f646,
1680 0x02b00783b,
1681 0x079bbd0e6,
1682 0x0d19b2b00,
1683 0x0bf00e7e2,
1684 0x000175bfc,
1685 0x000172618,
1686 0x0001cf5d4,
1687 0x000171a3c,
1688 0x040320400,
1689 0x040501000,
1690 0x040340018,
1691 0x00017325c,
1692 0x0001732d4,
1693 0x04032011c,
1694 0x04033b3d4,
1695 0x000173268,
1696 0x0001cf5ec,
1697 0x0001cf5fc,
1698 0x000180000,
1699 0x04033b3ac,
1700 0x04d52b470,
1701 0x0682b4852,
1702 0x04a534c52,
1703 0x04e544953,
1704 0x063c0f423,
1705 0x07300f443,
1706 0x06803602b,
1707 0x003bcf423,
1708 0x05370f423,
1709 0x02360f443,
1710 0x06380f443,
1711 0x068236003,
1712 0x00360f023,
1713 0x068136023,
1714 0x033fef423,
1715 0x03398f443,
1716 0x0680b6013,
1717 0x063c0f023,
1718 0x07300f043,
1719 0x069ab600b,
1720 0x050fff5a0,
1721 0x0f0433814,
1722 0x061ab6380,
1723 0x0f4436803,
1724 0x060036300,
1725 0x0f4236a23,
1726 0x0f043737f,
1727 0x062230304,
1728 0x0f5a26803,
1729 0x0f5a2120f,
1730 0x0f42352fe,
1731 0x03a1c5380,
1732 0x06300f443,
1733 0x068136003,
1734 0x041daf501,
1735 0x003ccf023,
1736 0x0f043316c,
1737 0x0601303c4,
1738 0x0f003680b,
1739 0x0f5a5437f,
1740 0x0f44355f7,
1741 0x03d141378,
1742 0x07378f443,
1743 0x0682b600b,
1744 0x0f5a40c1b,
1745 0x0041b5400,
1746 0x0f0433c14,
1747 0x0602b0384,
1748 0x04d286823,
1749 0x06340f423,
1750 0x06300f443,
1751 0x0f8d06023,
1752 0x0f5023104,
1753 0x0f42352f8,
1754 0x0321823e0,
1755 0x03380f443,
1756 0x03104f8c0,
1757 0x0f0236813,
1758 0x0f0235376,
1759 0x0f5010307,
1760 0x0f04351f7,
1761 0x031045304,
1762 0x00307f043,
1763 0x0680b6013,
1764 0x05400f504,
1765 0x052eff102,
1766 0x05001f500,
1767 0x0f502341c,
1768 0x0401d223d,
1769 0x00244f602,
1770 0x0600d4b13,
1771 0x060323008,
1772 0x068036023,
1773 0x0f4234a11,
1774 0x0f423237f,
1775 0x0f4436300,
1776 0x060033332,
1777 0x0f44368cb,
1778 0x060cb6300,
1779 0x0f0236813,
1780 0x0f4430309,
1781 0x0bc705380,
1782 0x047706013,
1783 0x040344020,
1784 0x040344024,
1785 0x040344028,
1786 0x040580104,
1787 0x04033b3b8,
1788 0x04034402c,
1789 0x0ff000003,
1790 0x01a2e5108,
1791 0x040580108,
1792 0x043f8e92d,
1793 0x078234c3c,
1794 0x0d05e2b00,
1795 0x0d05c28ff,
1796 0x0d05a29ff,
1797 0x04f3a4b39,
1798 0x01080eb00,
1799 0x000c0eb03,
1800 0x065a4f44f,
1801 0x0fb057f86,
1802 0x0f8957506,
1803 0x02a002062,
1804 0x0f895d14b,
1805 0x02b003064,
1806 0x0f8dfd047,
1807 0x04b3190ec,
1808 0x02000f8d9,
1809 0x08ed1691b,
1810 0x080e0f8df,
1811 0x022036165,
1812 0x077624419,
1813 0x031e0f8d8,
1814 0x0000cf104,
1815 0x04b2a4798,
1816 0x0075b681b,
1817 0x04b29d531,
1818 0x030b6f893,
1819 0x0d12f2b00,
1820 0x0681b4b27,
1821 0x02b02781b,
1822 0x04a23d12f,
1823 0x068134925,
1824 0x00304f023,
1825 0x0784b6013,
1826 0x077222201,
1827 0x04a22b123,
1828 0x0f0236813,
1829 0x060134300,
1830 0x0b10b7a23,
1831 0x072233b01,
1832 0x02000f8d9,
1833 0x08ed14b17,
1834 0x0f8d8691a,
1835 0x0616531e0,
1836 0x077602004,
1837 0x048194411,
1838 0x0f44f4798,
1839 0x0fb0363a4,
1840 0x0685a7306,
1841 0x07280f442,
1842 0x02000605a,
1843 0x083f8e8bd,
1844 0x0681b4b0f,
1845 0x02a02781a,
1846 0x0f8d8d003,
1847 0x047983254,
1848 0x0480fe7f3,
1849 0x06802490f,
1850 0x07200f422,
1851 0x0680a6002,
1852 0x00201f022,
1853 0x0e7bd600a,
1854 0x0001792b4,
1855 0x000176020,
1856 0x000177cb0,
1857 0x040501000,
1858 0x04032004c,
1859 0x000171934,
1860 0x0001732d0,
1861 0x0001732c4,
1862 0x040320434,
1863 0x0001792c0,
1864 0x04033b390,
1865 0x04032008c,
1866 0x0001732a4,
1867 0x000171a3c,
1868 0x0f0002800,
1869 0x0e92d80a9,
1870 0x0f89043f0,
1871 0x0b0833064,
1872 0x0b9134604,
1873 0x0e8bdb003,
1874 0x04b5f83f0,
1875 0x0f8df4a5f,
1876 0x0f8d2c1bc,
1877 0x04e5ee470,
1878 0x04f5f4a5e,
1879 0x091b0f8df,
1880 0x081b0f8df,
1881 0x0f8c32002,
1882 0x0f8dc0180,
1883 0x0f8ccc008,
1884 0x0f04fe044,
1885 0x060180c01,
1886 0x0c000f886,
1887 0x06813693f,
1888 0x0f0236077,
1889 0x0460d0302,
1890 0x060134954,
1891 0x0f8d9680f,
1892 0x0f8b83000,
1893 0x08f9b10b2,
1894 0x0017f9100,
1895 0x04950463a,
1896 0x0fbbcf661,
1897 0x068134a4f,
1898 0x0030ff003,
1899 0x0d06c2b0b,
1900 0x03000f8d9,
1901 0x020b2f8b8,
1902 0x044138f9b,
1903 0x0d2c142bb,
1904 0x049496872,
1905 0x0f6612002,
1906 0x04a43fba9,
1907 0x0691268f3,
1908 0x02b001a9b,
1909 0x0f8b4da5e,
1910 0x04b442068,
1911 0x0f8936869,
1912 0x02a050d23,
1913 0x03a01d95f,
1914 0x07702fb01,
1915 0x03d23f893,
1916 0x0463a493f,
1917 0x0f6612002,
1918 0x0f8d9fb91,
1919 0x0f8b82000,
1920 0x08f9230b2,
1921 0x048344933,
1922 0x069044d3a,
1923 0x0680b441a,
1924 0x0f0221aba,
1925 0x0f0030003,
1926 0x043030303,
1927 0x0600b4836,
1928 0x060b26803,
1929 0x00301f043,
1930 0x0682b6003,
1931 0x0f3c36829,
1932 0x0f4210309,
1933 0x0f043717f,
1934 0x0f0210301,
1935 0x0430b0103,
1936 0x06803602b,
1937 0x0075b4422,
1938 0x0d50360f2,
1939 0x0f44f4b2b,
1940 0x0601a7200,
1941 0x0482b4c2a,
1942 0x0491e6823,
1943 0x0f0434a1e,
1944 0x060230308,
1945 0x0f0436803,
1946 0x060030302,
1947 0x0f043680b,
1948 0x0600b0301,
1949 0x0f5016911,
1950 0x069137196,
1951 0x02b001a5b,
1952 0x0b003dbfb,
1953 0x083f0e8bd,
1954 0x068134770,
1955 0x0030ff023,
1956 0x0e7956013,
1957 0x0491c4b15,
1958 0x03d23f893,
1959 0x02002463a,
1960 0x0fb3cf661,
1961 0x0f893e7a9,
1962 0x02a012d24,
1963 0x0f893d99e,
1964 0x0b12a2d23,
1965 0x02d23f893,
1966 0x0fb013a01,
1967 0x0e7957702,
1968 0x02d24f893,
1969 0x0bf00e78f,
1970 0x0e000e100,
1971 0x000171a3c,
1972 0x0001732b4,
1973 0x040320084,
1974 0x040501000,
1975 0x040328040,
1976 0x0001cf60c,
1977 0x04058001c,
1978 0x0001cf61c,
1979 0x0001e4000,
1980 0x0001cf638,
1981 0x040506000,
1982 0x040044084,
1983 0x040044100,
1984 0x040580010,
1985 0x040580018,
1986 0x0001cf624,
1987 0x0e000ed00,
1988 0x0001732a4,
1989 0x000171934,
1990 0x041f0e92d,
1991 0x046042302,
1992 0x021052206,
1993 0x04019f241,
1994 0x0fce2f65f,
1995 0x023022206,
1996 0x021054606,
1997 0x04017f241,
1998 0x0fcdaf65f,
1999 0x080e0f8df,
2000 0x046054933,
2001 0x07080f44f,
2002 0x0fae8f661,
2003 0x0fdf8f665,
2004 0x0f64d4620,
2005 0x02700fea5,
2006 0x0006cf894,
2007 0x03024f8d8,
2008 0x070374798,
2009 0x03063f894,
2010 0x0482a7073,
2011 0x0010cf1a6,
2012 0x0f954f660,
2013 0x03064f894,
2014 0x0f894bb7b,
2015 0x02bff306c,
2016 0x02301d00d,
2017 0x022062100,
2018 0x0f65f200c,
2019 0x04601fcb1,
2020 0x0306cf894,
2021 0x0390cf801,
2022 0x0f660481e,
2023 0x06c23f93f,
2024 0x02301b16b,
2025 0x022062100,
2026 0x0f65f2039,
2027 0x04601fca1,
2028 0x03063f894,
2029 0x0390cf801,
2030 0x0f6604816,
2031 0x02300f92f,
2032 0x0f894702b,
2033 0x0706b3063,
2034 0x0010cf1a5,
2035 0x0f6604811,
2036 0x0e8bdf925,
2037 0x0f66541f0,
2038 0x02206bf03,
2039 0x046392304,
2040 0x0f65f201e,
2041 0x07087fc85,
2042 0x03063f894,
2043 0x0f1a070c3,
2044 0x04808010c,
2045 0x0f912f660,
2046 0x031d8f8d8,
2047 0x047984806,
2048 0x0775f4b06,
2049 0x0f4236863,
2050 0x060637380,
2051 0x0bf00e7b5,
2052 0x0001cf648,
2053 0x00017af08,
2054 0x0001792c0,
2055 0x0001792b4,
2056 0x000171a3c,
2057 0x043f0e92d,
2058 0x06cc56b43,
2059 0x01800f413,
2060 0x04604b083,
2061 0x00728f105,
2062 0x0f403d008,
2063 0x0f5b31360,
2064 0x0f0001f20,
2065 0x0b003808f,
2066 0x083f0e8bd,
2067 0x06d068dc3,
2068 0x0d538071a,
2069 0x09240f8df,
2070 0x02000f8d9,
2071 0x02000f9b2,
2072 0x0f2c02a00,
2073 0x06a7180c3,
2074 0x06a32b909,
2075 0x006186891,
2076 0x0f894d509,
2077 0x02b003043,
2078 0x080d1f040,
2079 0x03045f894,
2080 0x0f0402b00,
2081 0x06cf380d3,
2082 0x003f0f423,
2083 0x0790b64f3,
2084 0x0f01363b7,
2085 0x0bf080f01,
2086 0x07800f44f,
2087 0x0f8c62300,
2088 0x065338048,
2089 0x06e2a6aeb,
2090 0x0f0436372,
2091 0x062eb0302,
2092 0x0f6524620,
2093 0x06ce2fd4b,
2094 0x0f0436a53,
2095 0x062530310,
2096 0x0e8bdb003,
2097 0x04b6e83f0,
2098 0x03428f8d3,
2099 0x06deb4798,
2100 0x0f89464b3,
2101 0x0496b202b,
2102 0x060a4f44f,
2103 0x01202fb00,
2104 0x02062f892,
2105 0x0f894bb32,
2106 0x04967202c,
2107 0x01282eb02,
2108 0x002c2eb01,
2109 0x02124f8d2,
2110 0x0d51b0692,
2111 0x0f4128de2,
2112 0x06be25f00,
2113 0x0bf146bd2,
2114 0x01200f3c2,
2115 0x002c0f3c2,
2116 0x0f8d6b982,
2117 0x0f8bcc024,
2118 0x004102000,
2119 0x0d509b291,
2120 0x0200ae9d6,
2121 0x0010ef3c1,
2122 0x03a043804,
2123 0x01000f8ac,
2124 0x0200ae9c6,
2125 0x08160f8df,
2126 0x0f8d863b7,
2127 0x06d272000,
2128 0x02000f9b2,
2129 0x0db472a00,
2130 0x0b90a6a7a,
2131 0x068926a3a,
2132 0x063c0f423,
2133 0x0791264b3,
2134 0x0bf5c07d2,
2135 0x07300f443,
2136 0x0e79f64b3,
2137 0x06c866b83,
2138 0x022c2f3c3,
2139 0x063372a05,
2140 0x0f403d10d,
2141 0x06cea63c0,
2142 0x06f80f5b3,
2143 0x0f44fbf14,
2144 0x0f44f3380,
2145 0x0f4223300,
2146 0x0431a3240,
2147 0x0f10464ea,
2148 0x0f6500038,
2149 0x0f8d4ff01,
2150 0x06ba2c04c,
2151 0x0f8dc88b0,
2152 0x06de93024,
2153 0x06aea63ea,
2154 0x00408f040,
2155 0x0f44180b4,
2156 0x06e2c60c0,
2157 0x0f04262f4,
2158 0x064300202,
2159 0x00310f043,
2160 0x0463962ea,
2161 0x07082f506,
2162 0x0f8cc2234,
2163 0x0b0033024,
2164 0x043f0e8bd,
2165 0x0b8a6f670,
2166 0x02a006ce2,
2167 0x06a7ad03c,
2168 0x0d1b52a00,
2169 0x0b1926a3a,
2170 0x0e7b06cb3,
2171 0x06a71b32d,
2172 0x0f47f2900,
2173 0x06a32af3c,
2174 0x08de3b10a,
2175 0x04923e736,
2176 0x0f2404823,
2177 0x0f66112b9,
2178 0x06a32fb37,
2179 0x0491fe7f5,
2180 0x0f240481f,
2181 0x0f66112b9,
2182 0x06a3afb2f,
2183 0x02220e7e4,
2184 0x091014620,
2185 0x0ff70f66a,
2186 0x0e72c9901,
2187 0x091018922,
2188 0x0f66c4620,
2189 0x09901f889,
2190 0x04914e725,
2191 0x0f44f4815,
2192 0x0f66172d9,
2193 0x06a71fb19,
2194 0x0f8d9b9a9,
2195 0x0f9b33000,
2196 0x02b003000,
2197 0x0e7d8dbcf,
2198 0x072d9f44f,
2199 0x0480d490b,
2200 0x0fb0af661,
2201 0x0b9426a7a,
2202 0x03000f8d8,
2203 0x03000f9b3,
2204 0x0dbb72b00,
2205 0x08de3e7d1,
2206 0x06cb3e6f9,
2207 0x0bf00e768,
2208 0x000171a3c,
2209 0x000177cb0,
2210 0x000176020,
2211 0x0001cf6ac,
2212 0x0001cf67c,
2213 0x0001cf65c,
2214 0x0001732b0,
2215 0x042984b1d,
2216 0x03b0dd812,
2217 0x0d91b4298,
2218 0x0207af5a0,
2219 0x06340f46f,
2220 0x0280c4418,
2221 0x0e8dfd814,
2222 0x00f11f000,
2223 0x0211f0d13,
2224 0x027252313,
2225 0x0001d2b29,
2226 0x042984b13,
2227 0x03302d004,
2228 0x0d1074298,
2229 0x047702002,
2230 0x047702001,
2231 0x047702000,
2232 0x0477020ff,
2233 0x01372f5a3,
2234 0x042983b03,
2235 0x020ffbf14,
2236 0x047702004,
2237 0x04770200b,
2238 0x047702003,
2239 0x047702005,
2240 0x047702006,
2241 0x047702007,
2242 0x047702008,
2243 0x047702009,
2244 0x04770200a,
2245 0x0000fac0d,
2246 0x00050f202,
2247 0x01c434401,
2248 0x0d9174299,
2249 0x0e003b470,
2250 0x042991c6b,
2251 0x0d90e4628,
2252 0x078067844,
2253 0x02e301ca3,
2254 0x00500eb03,
2255 0x042a9d1f4,
2256 0x0b128d305,
2257 0x0d9022b13,
2258 0x0bc707014,
2259 0x020004770,
2260 0x04770bc70,
2261 0x047702000,
2262 0x043f8e92d,
2263 0x042a0180c,
2264 0x0d30846a0,
2265 0x0f890e032,
2266 0x0781ee001,
2267 0x00502f10e,
2268 0x044282edd,
2269 0x01c45d007,
2270 0x0460342ac,
2271 0x02300d8f3,
2272 0x0e8bd4618,
2273 0x0428483f8,
2274 0x02b00d3f9,
2275 0x0f103d0f8,
2276 0x045e00c07,
2277 0x04f15d3f3,
2278 0x026001c9c,
2279 0x0f817e001,
2280 0x0f8946f01,
2281 0x045b19000,
2282 0x00401f104,
2283 0x045a4d108,
2284 0x02d17d1f5,
2285 0x0f882d9e3,
2286 0x04618e000,
2287 0x083f8e8bd,
2288 0x045801b49,
2289 0x0d901b289,
2290 0x0e7d4180c,
2291 0x0681b4b08,
2292 0x03000f9b3,
2293 0x0dad22b00,
2294 0x0d0d04540,
2295 0x048064905,
2296 0x0621ef240,
2297 0x0fa48f661,
2298 0x0e7c92300,
2299 0x0001cf6a4,
2300 0x0001732b0,
2301 0x0001cf6d4,
2302 0x0001cf690,
2303 0x01c434401,
2304 0x0d9174299,
2305 0x0e003b470,
2306 0x042991c6b,
2307 0x0d90e4628,
2308 0x078067844,
2309 0x02e441ca3,
2310 0x00500eb03,
2311 0x042a9d1f4,
2312 0x0b128d305,
2313 0x0d9022b15,
2314 0x0bc707014,
2315 0x020004770,
2316 0x04770bc70,
2317 0x047702000,
2318 0x042984b27,
2319 0x03b12d81c,
2320 0x0d9174298,
2321 0x0207af5a0,
2322 0x06340f46f,
2323 0x028114418,
2324 0x0e8dfd810,
2325 0x00b0df000,
2326 0x02c2a2809,
2327 0x00f32302e,
2328 0x00f383634,
2329 0x0263e3c3a,
2330 0x047702004,
2331 0x047702003,
2332 0x047702002,
2333 0x0477020ff,
2334 0x042984b18,
2335 0x0d908d00f,
2336 0x042984b17,
2337 0x03301d0f4,
2338 0x0bf144298,
2339 0x0200320ff,
2340 0x03b014770,
2341 0x0bf144298,
2342 0x0201220ff,
2343 0x020134770,
2344 0x020114770,
2345 0x020054770,
2346 0x020064770,
2347 0x020074770,
2348 0x020084770,
2349 0x020094770,
2350 0x0200a4770,
2351 0x0200b4770,
2352 0x0200c4770,
2353 0x0200d4770,
2354 0x0200e4770,
2355 0x0200f4770,
2356 0x020104770,
2357 0x0bf004770,
2358 0x0000fac12,
2359 0x000147202,
2360 0x00050f201,
2361 0x041f0e92d,
2362 0x08e524616,
2363 0x0e9c62300,
2364 0x006d3330d,
2365 0x0d56eb082,
2366 0x0eb014607,
2367 0x046040800,
2368 0x07865e007,
2369 0x01cab7820,
2370 0x0eb032830,
2371 0x0d0670204,
2372 0x01c634614,
2373 0x0d8f44598,
2374 0x00207f10d,
2375 0x0f7ff4638,
2376 0x04601ff1b,
2377 0x0d04c2800,
2378 0x0f89d6880,
2379 0x023022007,
2380 0x06373ba00,
2381 0x0feb2f7ff,
2382 0x0f0402800,
2383 0x0898c80b6,
2384 0x0310e3a0c,
2385 0x02a03b19c,
2386 0x02501dd11,
2387 0x02a03e001,
2388 0x06808dd0d,
2389 0x0f7ffba00,
2390 0x03a04fea1,
2391 0x0b1203104,
2392 0x0fa058f73,
2393 0x04318f000,
2394 0x03c018770,
2395 0x02a01d1ef,
2396 0x0460cdd1b,
2397 0x05b02f834,
2398 0x02a05b1bd,
2399 0x03a06dd15,
2400 0x0f0221d8b,
2401 0x0441a0203,
2402 0x0e0012101,
2403 0x0d00c4294,
2404 0x0ba006820,
2405 0x0ff50f7ff,
2406 0x0b1203404,
2407 0x0fa016b73,
2408 0x04318f000,
2409 0x03d016370,
2410 0x0b002d1f0,
2411 0x081f0e8bd,
2412 0x07838787b,
2413 0x028441c9a,
2414 0x00107eb02,
2415 0x08081f000,
2416 0x01c7b460f,
2417 0x0d8f34598,
2418 0x023012202,
2419 0x087336372,
2420 0x0e8bdb002,
2421 0x0230181f0,
2422 0x0b0026373,
2423 0x081f0e8bd,
2424 0x0d3994590,
2425 0x0d0972c00,
2426 0x0d9952b13,
2427 0x05007f88d,
2428 0x0ba006860,
2429 0x0fe52f7ff,
2430 0x0d15d2800,
2431 0x0f1048922,
2432 0x0f1a5010a,
2433 0x02a000708,
2434 0x080b5f000,
2435 0x0e0032401,
2436 0x0dd112b03,
2437 0x04629461f,
2438 0x0ba006808,
2439 0x0fe3ef7ff,
2440 0x01d0d1f3b,
2441 0x0f8b6b130,
2442 0x0fa04c03a,
2443 0x0ea40f000,
2444 0x08770000c,
2445 0x0d1eb3a01,
2446 0x03106882a,
2447 0x0b1a23f06,
2448 0x0dd122f03,
2449 0x0e0022401,
2450 0x0f3402f03,
2451 0x068088087,
2452 0x0f7ffba00,
2453 0x03f04fef1,
2454 0x0b1203104,
2455 0x0fa046b73,
2456 0x04318f000,
2457 0x03a016370,
2458 0x02f01d1ee,
2459 0x0460cdd9d,
2460 0x02b011ebb,
2461 0x02b02f834,
2462 0x08823dd06,
2463 0x01d0c1f3d,
2464 0x01403eb04,
2465 0x01303eba5,
2466 0x00fc0f012,
2467 0x02b03d08d,
2468 0x06820dd6c,
2469 0x0f7ffba00,
2470 0x02800fe01,
2471 0x08f32d085,
2472 0x040832301,
2473 0x087334313,
2474 0x08f34e77f,
2475 0x0fa032301,
2476 0x04320f000,
2477 0x0e7428730,
2478 0x0fa032301,
2479 0x08730f000,
2480 0x04588e79c,
2481 0x02f00d380,
2482 0x0af7ef43f,
2483 0x0f67f2a15,
2484 0x0f88daf7b,
2485 0x088b93007,
2486 0x01f1c1dba,
2487 0x0d0552900,
2488 0x0e0032701,
2489 0x0dd102b03,
2490 0x04662461c,
2491 0x0ba006810,
2492 0x0fea2f7ff,
2493 0x0f1021f23,
2494 0x0b1200c04,
2495 0x0fa076b75,
2496 0x04328f000,
2497 0x039016370,
2498 0x02b01d1ec,
2499 0x0af4df77f,
2500 0x01000f8bc,
2501 0x01fa21d97,
2502 0x02a03b1a9,
2503 0x0af45f77f,
2504 0x0e0022401,
2505 0x0f77f2a03,
2506 0x06838af40,
2507 0x0f7ffba00,
2508 0x03704fdb5,
2509 0x0b1203a04,
2510 0x0fa048f73,
2511 0x04318f000,
2512 0x039018770,
2513 0x02a03d1ee,
2514 0x0af2ff77f,
2515 0x0ba006838,
2516 0x0fda4f7ff,
2517 0x0f43f2800,
2518 0x0e7a0af28,
2519 0x0f77f2f01,
2520 0x0880baf24,
2521 0x00fc0f013,
2522 0x0af1ff43f,
2523 0x0f0438f33,
2524 0x087330320,
2525 0x0880ae719,
2526 0x0070af1a5,
2527 0x0010cf104,
2528 0x0f47f2a00,
2529 0x0880aaf5f,
2530 0x0e776340e,
2531 0x037088811,
2532 0x029001f9a,
2533 0x0e7d9d1c4,
2534 0x0b4704b11,
2535 0x0f5034606,
2536 0x0e0066400,
2537 0x08832895d,
2538 0x0d00b4295,
2539 0x042a33340,
2540 0x07a1ad013,
2541 0x00008f103,
2542 0x0d1f32a00,
2543 0x0d0f52900,
2544 0x04770bc70,
2545 0x08872899d,
2546 0x0d1ef4295,
2547 0x088b289dd,
2548 0x0d0f54295,
2549 0x042a33340,
2550 0x02000d1eb,
2551 0x04770bc70,
2552 0x00017af38,
2553 0x04ff0e92d,
2554 0x0ed2d4d77,
2555 0x0682f8b02,
2556 0x0f897b087,
2557 0x09301314a,
2558 0x020044604,
2559 0x0fb1cf65f,
2560 0x0d0052801,
2561 0x0b0072000,
2562 0x08b02ecbd,
2563 0x08ff0e8bd,
2564 0x0462b8ba1,
2565 0x07a1a2600,
2566 0x01886ea4f,
2567 0x0d17b2a00,
2568 0x0380cf895,
2569 0x0f14007db,
2570 0x0f1088081,
2571 0x044ab0b08,
2572 0x00908eb05,
2573 0x01002f8ab,
2574 0x0f8ab8be3,
2575 0x08c233004,
2576 0x03006f8ab,
2577 0x0202df894,
2578 0x0302cf894,
2579 0x02302ea43,
2580 0x03038f8a9,
2581 0x046a28de3,
2582 0x02b30f83a,
2583 0x0303af8a9,
2584 0x00301f003,
2585 0x00302f1c3,
2586 0x00124f1a2,
2587 0x0f10d4650,
2588 0x0f8a90216,
2589 0x0ee083032,
2590 0x0f65f1a10,
2591 0x02800fee1,
2592 0x0809ff000,
2593 0x02016f89d,
2594 0x02010f889,
2595 0x00111f108,
2596 0x0b1524429,
2597 0x0f1c3460b,
2598 0x044110c02,
2599 0x0f81218c2,
2600 0x0f803200c,
2601 0x042992b01,
2602 0x0f895d1f8,
2603 0x02b003833,
2604 0x08172f040,
2605 0x0380af895,
2606 0x0d1522b00,
2607 0x0c14cf897,
2608 0x00f00f1bc,
2609 0x0f108d04d,
2610 0x0eb050111,
2611 0x0ee080208,
2612 0x0f8cdaa90,
2613 0x04699800c,
2614 0x0442946a0,
2615 0x04692463c,
2616 0x0f109e007,
2617 0x045cc0901,
2618 0x00721f107,
2619 0x0f3404662,
2620 0x0f8978190,
2621 0x0b35b30fc,
2622 0x02010f89a,
2623 0x0d1f0429a,
2624 0x000fdf107,
2625 0x0f66f9102,
2626 0x02800fcdd,
2627 0x081bff000,
2628 0x0c14cf894,
2629 0x0e7e49902,
2630 0x0428a895a,
2631 0x03601d048,
2632 0x0f1032e20,
2633 0x0f47f0340,
2634 0x0e76baf76,
2635 0x0380cf8b5,
2636 0x0f47f428b,
2637 0x08be2af67,
2638 0x0380ef8b5,
2639 0x0f47f429a,
2640 0x08c22af61,
2641 0x03810f8b5,
2642 0x0f47f429a,
2643 0x0e76caf5b,
2644 0x0ee184644,
2645 0x0f8ddaa90,
2646 0x04662800c,
2647 0x0f43f4591,
2648 0x0ee18af51,
2649 0x046501a10,
2650 0x0ff5af65f,
2651 0x079a2b370,
2652 0x02a007883,
2653 0x0811ef040,
2654 0x0290d1e59,
2655 0x08117f200,
2656 0x0f0002b0e,
2657 0x0eb038181,
2658 0x0f6030383,
2659 0x046101167,
2660 0x0f94ef663,
2661 0x0eb053601,
2662 0x0eb050308,
2663 0x063581686,
2664 0x03009f994,
2665 0x02004f996,
2666 0x0da19429a,
2667 0x0e0177133,
2668 0x08be28998,
2669 0x0d1b24290,
2670 0x08c2289d8,
2671 0x0d1ae4290,
2672 0x0f889e72e,
2673 0x0e7700010,
2674 0x00017af38,
2675 0x0eb053601,
2676 0x0f9941686,
2677 0x0f9962009,
2678 0x0429a3004,
2679 0x08104f300,
2680 0x03a10ee18,
2681 0x0465ab29f,
2682 0x046504639,
2683 0x0fd7af7ff,
2684 0x0380af895,
2685 0x0f0002b00,
2686 0x0eb0580bc,
2687 0x046130208,
2688 0x0f8538e51,
2689 0x0f8df0f0a,
2690 0x0889ac2fc,
2691 0x0f44f9b01,
2692 0x0fb0666a4,
2693 0x04eb9f303,
2694 0x018f39302,
2695 0x06008f85c,
2696 0x00168f8c3,
2697 0x0216cf8a3,
2698 0x0f8a39802,
2699 0x022ff1190,
2700 0x0f88349b2,
2701 0x0f8832165,
2702 0x0f8c321c2,
2703 0x0f893619c,
2704 0x0f100316e,
2705 0x0448b0bf0,
2706 0x0f0402b00,
2707 0x09b0180d7,
2708 0x04baa461a,
2709 0x066a4f44f,
2710 0x00908eb05,
2711 0x03602fb06,
2712 0x00e10f109,
2713 0x076b7f506,
2714 0x00930f109,
2715 0x0e8bc46f4,
2716 0x045cc000f,
2717 0x060716030,
2718 0x060f360b2,
2719 0x0f10646e6,
2720 0x0d1f30610,
2721 0x03000f89c,
2722 0x09b027033,
2723 0x072d0f503,
2724 0x046199b01,
2725 0x0eb054b99,
2726 0x0f44f0908,
2727 0x0fb0666a4,
2728 0x0441a3601,
2729 0x03034f8d9,
2730 0x03194f8c6,
2731 0x0f8a62300,
2732 0x0f8c631c6,
2733 0x0463931d0,
2734 0x092034650,
2735 0x0ff8af661,
2736 0x03034f8d9,
2737 0x0789b9a03,
2738 0x0d07e2b00,
2739 0x04e8b9b02,
2740 0x072d8f503,
2741 0x0f10d4432,
2742 0x046390317,
2743 0x0f6624650,
2744 0x0b180f921,
2745 0x0f44f9a01,
2746 0x0fb0363a4,
2747 0x0f8b36302,
2748 0x0f8d3119e,
2749 0x0f44121d0,
2750 0x0f0427100,
2751 0x0f8a30201,
2752 0x0f8c3119e,
2753 0x0f8df21d0,
2754 0x0f8999200,
2755 0x007de3176,
2756 0x09a01d50a,
2757 0x04a794611,
2758 0x063a4f44f,
2759 0x02301fb03,
2760 0x021d0f8d3,
2761 0x0d47a07d0,
2762 0x0460e2100,
2763 0x0465a4630,
2764 0x0fc96f663,
2765 0x04639465a,
2766 0x0f6614650,
2767 0x0465aff91,
2768 0x046504639,
2769 0x0ff96f661,
2770 0x04639465a,
2771 0x0f6614650,
2772 0x09a01fff9,
2773 0x04a694611,
2774 0x063a4f44f,
2775 0x02301fb03,
2776 0x0f8d32101,
2777 0x0f88521d0,
2778 0x0f0421834,
2779 0x0f8c34200,
2780 0x0eb0521d0,
2781 0x07a1b0308,
2782 0x088abb913,
2783 0x080ab3301,
2784 0x046204445,
2785 0x023042401,
2786 0x0f241220b,
2787 0x0722c0104,
2788 0x0ff1ef65e,
2789 0x0e6364620,
2790 0x00011f108,
2791 0x044284958,
2792 0x0f66f2207,
2793 0x02800fb8f,
2794 0x0ae2cf47f,
2795 0x0f64fe6d9,
2796 0x0e6ec71ff,
2797 0x0d1fa2a01,
2798 0x029a41e59,
2799 0x0eb03d8f7,
2800 0x0f5030383,
2801 0x03108519c,
2802 0x04610e6e1,
2803 0x0f6632101,
2804 0x0f010f9db,
2805 0x0bf1a000f,
2806 0x0f080fab0,
2807 0x0031ff1c0,
2808 0x0f8862301,
2809 0x0e77131c5,
2810 0x079a088a1,
2811 0x0f820f663,
2812 0x00308eb05,
2813 0x07a636358,
2814 0x0e6f17133,
2815 0x0f2039b02,
2816 0x04b3e106f,
2817 0x0f66f4418,
2818 0x02800fd79,
2819 0x0af1ff43f,
2820 0x04644e73b,
2821 0x0aa90ee18,
2822 0x0800cf8dd,
2823 0x0465ae69e,
2824 0x046504639,
2825 0x0f6629303,
2826 0x09b03f8cf,
2827 0x0f43f2800,
2828 0x0f8d3af7b,
2829 0x0f04221d0,
2830 0x0ee180202,
2831 0x0f8c31a10,
2832 0x0465021d0,
2833 0x0ff12f65f,
2834 0x02176f899,
2835 0x046060751,
2836 0x00792d426,
2837 0x09a01d40c,
2838 0x04a284611,
2839 0x063a4f44f,
2840 0x02301fb03,
2841 0x011d0f8d3,
2842 0x00108f011,
2843 0x0af5ef43f,
2844 0x0f5039b02,
2845 0x04b217288,
2846 0x0441a4639,
2847 0x0f6624650,
2848 0x0b9d8f8c7,
2849 0x0e7514601,
2850 0x011b4f640,
2851 0x04627e67f,
2852 0x0aa90ee18,
2853 0x0f8974644,
2854 0x0f8dd214c,
2855 0x0e65d800c,
2856 0x0f5039b02,
2857 0x04b15728e,
2858 0x0441a4639,
2859 0x0f6624650,
2860 0x09b03f8cd,
2861 0x0f899b9b0,
2862 0x0e7ca2176,
2863 0x046119a01,
2864 0x0f44f4a0e,
2865 0x0fb0363a4,
2866 0x046502301,
2867 0x021d0f8d3,
2868 0x00204f042,
2869 0x01a10ee18,
2870 0x021d0f8c3,
2871 0x0fee6f65f,
2872 0x0e7234601,
2873 0x011d0f8d3,
2874 0x00008f041,
2875 0x001d0f8c3,
2876 0x04639465a,
2877 0x0f6624650,
2878 0x0e7dcf8ff,
2879 0x000177cb0,
2880 0x0001cf69c,
2881 0x00017af70,
2882 0x00017ad7c,
2883 0x04a0b4b0a,
2884 0x0f893681b,
2885 0x0f44f314a,
2886 0x0fb0060a4,
2887 0x046082303,
2888 0x03087f993,
2889 0x0f991b11b,
2890 0x0429a2009,
2891 0x0f7ffdb01,
2892 0x02000bd59,
2893 0x0bf004770,
2894 0x00017af38,
2895 0x000177cb0,
2896 0x0735f6372,
2897 0x03d212073,
2898 0x04c554e20,
2899 0x00000004c,
2900 0x0786e7772,
2901 0x065725f6c,
2902 0x05f746573,
2903 0x05f747665,
2904 0x063746170,
2905 0x0000a0d68,
2906 0x061647075,
2907 0x025206574,
2908 0x025202c64,
2909 0x0000a0d64,
2910 0x065736572,
2911 0x06f642074,
2912 0x00a0d656e,
2913 0x000000000,
2914 0x020676663,
2915 0x025206425,
2916 0x064252064,
2917 0x000000a0d,
2918 0x078253d74,
2919 0x000000a0d,
2920 0x020746f6e,
2921 0x074736170,
2922 0x06425203a,
2923 0x00d64252c,
2924 0x00000000a,
2925 0x073736170,
2926 0x06425203a,
2927 0x00d64252c,
2928 0x00000000a,
2929 0x0656c6564,
2930 0x072206574,
2931 0x072756f65,
2932 0x00d736563,
2933 0x00000000a,
2934 0x05f6c7874,
2935 0x066667562,
2936 0x0675f7265,
2937 0x074287465,
2938 0x073656478,
2939 0x021202963,
2940 0x0554e203d,
2941 0x000004c4c,
2942 0x02d646874,
2943 0x07269663e,
2944 0x0705f7473,
2945 0x0705f6462,
2946 0x000007274,
2947 0x072646461,
2948 0x0203d3d20,
2949 0x000646e65,
2950 0x045524944,
2951 0x0002d5443,
2952 0x001f25000,
2953 0x000000001,
2954 0x05f6c7874,
2955 0x066667562,
2956 0x06d5f7265,
2957 0x064686361,
2958 0x065675f72,
2959 0x000000074,
2960 0x0635f6372,
2961 0x06b636568,
2962 0x07461705f,
2963 0x000006863,
2964 0x063616d5f,
2965 0x06973765f,
2966 0x069665f65,
2967 0x000646e,
2968 };
2969
2970 #define AON_PATCH_START_ADDR_U02 0x001E4D28
2971 #define AON_PATCH_NUM_U02 0x001E4D2C
2972 #define PATCH_STORE_ADDR_U02 0x001E6000
2973 #define FW_PATCH_ADDR_U02 0x001CE000
2974 #define AON_PATCH_START_ADDR_U03 0x001E4D28
2975 #define AON_PATCH_NUM_U03 0x001E4D2C
2976 #define PATCH_STORE_ADDR_U03 0x001E6000
2977 #define FW_PATCH_ADDR_U03 0x001CE000
2978
2979 #define AON_PATCH_START_ADDRx(v) MCAT(AON_PATCH_START_ADDR_U0, v)
2980 #define AON_PATCH_START_ADDR AON_PATCH_START_ADDRx(CFG_ROM_VER)
2981 #define AON_PATCH_NUMx(v) MCAT(AON_PATCH_NUM_U0, v)
2982 #define AON_PATCH_NUM AON_PATCH_NUMx(CFG_ROM_VER)
2983 #define PATCH_STORE_ADDRx(v) MCAT(PATCH_STORE_ADDR_U0, v)
2984 #define PATCH_STORE_ADDR PATCH_STORE_ADDRx(CFG_ROM_VER)
2985 #define FW_PATCH_ADDRx(v) MCAT(FW_PATCH_ADDR_U0, v)
2986 #define FW_PATCH_ADDR FW_PATCH_ADDRx(CFG_ROM_VER)
2987
2988 patch_tbl_array_t patch_tbl;
2989 patch_tbl_array_t patch_tbl_func;
2990 uint32_t *patch_func;
2991 uint32_t patch_tbl_size;
2992 uint32_t patch_tbl_func_size;
2993 uint32_t patch_func_size;
2994 uint32_t aon_patch_start_addr;
2995 uint32_t aon_patch_num;
2996 uint32_t patch_store_addr;
2997 uint32_t fw_patch_addr;
2998
wifi_patch_prepare(void)2999 void wifi_patch_prepare(void)
3000 {
3001 #if (CFG_ROM_VER == 255)
3002 uint8_t chip_id = ChipIdGet(0);
3003 if (chip_id == 0x03) {
3004 patch_tbl = VAR_WITH_VERx(patch_tbl, 2);
3005 patch_tbl_func = VAR_WITH_VERx(patch_tbl_func, 2);
3006 patch_func = VAR_WITH_VERx(patch_func, 2);
3007 patch_tbl_size = sizeof(VAR_WITH_VERx(patch_tbl, 2)) / 4;
3008 patch_tbl_func_size = sizeof(VAR_WITH_VERx(patch_tbl_func, 2)) / 4;
3009 patch_func_size = sizeof(VAR_WITH_VERx(patch_func, 2)) / 4;
3010 aon_patch_start_addr = AON_PATCH_START_ADDRx(2);
3011 aon_patch_num = AON_PATCH_NUMx(2);
3012 patch_store_addr = PATCH_STORE_ADDRx(2);
3013 fw_patch_addr = FW_PATCH_ADDRx(2);
3014 } else if (chip_id == 0x07) {
3015 patch_tbl = VAR_WITH_VERx(patch_tbl, 3);
3016 patch_tbl_func = VAR_WITH_VERx(patch_tbl_func, 3);
3017 patch_func = VAR_WITH_VERx(patch_func, 3);
3018 patch_tbl_size = sizeof(VAR_WITH_VERx(patch_tbl, 3)) / 4;
3019 patch_tbl_func_size = sizeof(VAR_WITH_VERx(patch_tbl_func, 3)) / 4;
3020 patch_func_size = sizeof(VAR_WITH_VERx(patch_func, 3)) / 4;
3021 aon_patch_start_addr = AON_PATCH_START_ADDRx(3);
3022 aon_patch_num = AON_PATCH_NUMx(3);
3023 patch_store_addr = PATCH_STORE_ADDRx(3);
3024 fw_patch_addr = FW_PATCH_ADDRx(3);
3025 }
3026 #else
3027 patch_tbl = VAR_WITH_VER(patch_tbl);
3028 patch_tbl_func = VAR_WITH_VER(patch_tbl_func);
3029 patch_func = VAR_WITH_VER(patch_func);
3030 patch_tbl_size = sizeof(VAR_WITH_VER(patch_tbl)) / 4;
3031 patch_tbl_func_size = sizeof(VAR_WITH_VER(patch_tbl_func)) / 4;
3032 patch_func_size = sizeof(VAR_WITH_VER(patch_func)) / 4;
3033 aon_patch_start_addr = AON_PATCH_START_ADDR;
3034 aon_patch_num = AON_PATCH_NUM;
3035 patch_store_addr = PATCH_STORE_ADDR;
3036 fw_patch_addr = FW_PATCH_ADDR;
3037 #endif
3038 }
3039