6 #define RTS_RATE_1M 0x00
7 #define RTS_RATE_11M 0x03
8 #define RTS_RATE_24M 0x09
9 #define RTS_MOD_TYPE_OFDM 0x100
10 #define RTS_PMB_TYPE_SHORT 0x200
11 #define CTS_RATE_11M 0x30000
12 #define CTS_RATE_24M 0x90000
13 #define CTS_MOD_TYPE_OFDM 0x1000000
14 #define CTS_PMB_TYPE_SHORT 0x2000000
15 #define NON_BARKER_PMB_SET (RTS_MOD_TYPE_OFDM | RTS_PMB_TYPE_SHORT | CTS_MOD_TYPE_OFDM | CTS_PMB_TYPE_SHORT)
16 #define NON_PROTECT_SET (RTS_MOD_TYPE_OFDM | CTS_MOD_TYPE_OFDM)
28 #define ZD_CR10 0x0028
29 #define ZD_CR11 0x002C
30 #define ZD_CR12 0x0030
31 #define ZD_CR13 0x0034
32 #define ZD_CR14 0x0038
33 #define ZD_CR15 0x003C
34 #define ZD_CR16 0x0040
35 #define ZD_CR17 0x0044
36 #define ZD_CR18 0x0048
37 #define ZD_CR19 0x004C
38 #define ZD_CR20 0x0050
39 #define ZD_CR21 0x0054
40 #define ZD_CR22 0x0058
41 #define ZD_CR23 0x005C
42 #define ZD_CR24 0x0060
43 #define ZD_CR25 0x0064
44 #define ZD_CR26 0x0068
45 #define ZD_CR27 0x006C
46 #define ZD_CR28 0x0070
47 #define ZD_CR29 0x0074
48 #define ZD_CR30 0x0078
49 #define ZD_CR31 0x007C
50 #define ZD_CR32 0x0080
51 #define ZD_CR33 0x0084
52 #define ZD_CR34 0x0088
53 #define ZD_CR35 0x008C
54 #define ZD_CR36 0x0090
55 #define ZD_CR37 0x0094
56 #define ZD_CR38 0x0098
57 #define ZD_CR39 0x009C
58 #define ZD_CR40 0x00A0
59 #define ZD_CR41 0x00A4
60 #define ZD_CR42 0x00A8
61 #define ZD_CR43 0x00AC
62 #define ZD_CR44 0x00B0
63 #define ZD_CR45 0x00B4
64 #define ZD_CR46 0x00B8
65 #define ZD_CR47 0x00BC
66 #define ZD_CR48 0x00C0
67 #define ZD_CR49 0x00C4
68 #define ZD_CR50 0x00C8
69 #define ZD_CR51 0x00CC
70 #define ZD_CR52 0x00D0
71 #define ZD_CR53 0x00D4
72 #define ZD_CR54 0x00D8
73 #define ZD_CR55 0x00DC
74 #define ZD_CR56 0x00E0
75 #define ZD_CR57 0x00E4
76 #define ZD_CR58 0x00E8
77 #define ZD_CR59 0x00EC
78 #define ZD_CR60 0x00F0
79 #define ZD_CR61 0x00F4
80 #define ZD_CR62 0x00F8
81 #define ZD_CR63 0x00FC
82 #define ZD_CR64 0x0100
83 #define ZD_CR65 0x0104
84 #define ZD_CR66 0x0108
85 #define ZD_CR67 0x010C
86 #define ZD_CR68 0x0110
87 #define ZD_CR69 0x0114
88 #define ZD_CR70 0x0118
89 #define ZD_CR71 0x011C
90 #define ZD_CR72 0x0120
91 #define ZD_CR73 0x0124
92 #define ZD_CR74 0x0128
93 #define ZD_CR75 0x012C
94 #define ZD_CR76 0x0130
95 #define ZD_CR77 0x0134
96 #define ZD_CR78 0x0138
97 #define ZD_CR79 0x013C
98 #define ZD_CR80 0x0140
99 #define ZD_CR81 0x0144
100 #define ZD_CR82 0x0148
101 #define ZD_CR83 0x014C
102 #define ZD_CR84 0x0150
103 #define ZD_CR85 0x0154
104 #define ZD_CR86 0x0158
105 #define ZD_CR87 0x015C
106 #define ZD_CR88 0x0160
107 #define ZD_CR89 0x0164
108 #define ZD_CR90 0x0168
109 #define ZD_CR91 0x016C
110 #define ZD_CR92 0x0170
111 #define ZD_CR93 0x0174
112 #define ZD_CR94 0x0178
113 #define ZD_CR95 0x017C
114 #define ZD_CR96 0x0180
115 #define ZD_CR97 0x0184
116 #define ZD_CR98 0x0188
117 #define ZD_CR99 0x018C
118 #define ZD_CR100 0x0190
119 #define ZD_CR101 0x0194
120 #define ZD_CR102 0x0198
121 #define ZD_CR103 0x019C
122 #define ZD_CR104 0x01A0
123 #define ZD_CR105 0x01A4
124 #define ZD_CR106 0x01A8
125 #define ZD_CR107 0x01AC
126 #define ZD_CR108 0x01B0
127 #define ZD_CR109 0x01B4
128 #define ZD_CR110 0x01B8
129 #define ZD_CR111 0x01BC
130 #define ZD_CR112 0x01C0
131 #define ZD_CR113 0x01C4
132 #define ZD_CR114 0x01C8
133 #define ZD_CR115 0x01CC
134 #define ZD_CR116 0x01D0
135 #define ZD_CR117 0x01D4
136 #define ZD_CR118 0x01D8
137 #define ZD_CR119 0x01DC
138 #define ZD_CR120 0x01E0
139 #define ZD_CR121 0x01E4
140 #define ZD_CR122 0x01E8
141 #define ZD_CR123 0x01EC
142 #define ZD_CR124 0x01F0
143 #define ZD_CR125 0x01F4
144 #define ZD_CR126 0x01F8
145 #define ZD_CR127 0x01FC
146 #define ZD_CR128 0x0200
147 #define ZD_CR129 0x0204
148 #define ZD_CR130 0x0208
149 #define ZD_CR131 0x020C
150 #define ZD_CR132 0x0210
151 #define ZD_CR133 0x0214
152 #define ZD_CR134 0x0218
153 #define ZD_CR135 0x021C
154 #define ZD_CR136 0x0220
155 #define ZD_CR137 0x0224
156 #define ZD_CR138 0x0228
157 #define ZD_CR139 0x022C
158 #define ZD_CR140 0x0230
159 #define ZD_CR141 0x0234
160 #define ZD_CR142 0x0238
161 #define ZD_CR143 0x023C
162 #define ZD_CR144 0x0240
163 #define ZD_CR145 0x0244
164 #define ZD_CR146 0x0248
165 #define ZD_CR147 0x024C
166 #define ZD_CR148 0x0250
167 #define ZD_CR149 0x0254
168 #define ZD_CR150 0x0258
169 #define ZD_CR151 0x025C
170 #define ZD_CR152 0x0260
171 #define ZD_CR153 0x0264
172 #define ZD_CR154 0x0268
173 #define ZD_CR155 0x026C
174 #define ZD_CR156 0x0270
175 #define ZD_CR157 0x0274
176 #define ZD_CR158 0x0278
177 #define ZD_CR159 0x027C
178 #define ZD_CR160 0x0280
179 #define ZD_CR161 0x0284
180 #define ZD_CR162 0x0288
181 #define ZD_CR163 0x028C
182 #define ZD_CR164 0x0290
183 #define ZD_CR165 0x0294
184 #define ZD_CR166 0x0298
185 #define ZD_CR167 0x029C
186 #define ZD_CR168 0x02A0
187 #define ZD_CR169 0x02A4
188 #define ZD_CR170 0x02A8
189 #define ZD_CR171 0x02AC
190 #define ZD_CR172 0x02B0
191 #define ZD_CR173 0x02B4
192 #define ZD_CR174 0x02B8
193 #define ZD_CR175 0x02BC
194 #define ZD_CR176 0x02C0
195 #define ZD_CR177 0x02C4
196 #define ZD_CR178 0x02C8
197 #define ZD_CR179 0x02CC
198 #define ZD_CR180 0x02D0
199 #define ZD_CR181 0x02D4
200 #define ZD_CR182 0x02D8
201 #define ZD_CR183 0x02DC
202 #define ZD_CR184 0x02E0
203 #define ZD_CR185 0x02E4
204 #define ZD_CR186 0x02E8
205 #define ZD_CR187 0x02EC
206 #define ZD_CR188 0x02F0
207 #define ZD_CR189 0x02F4
208 #define ZD_CR190 0x02F8
209 #define ZD_CR191 0x02FC
210 #define ZD_CR192 0x0300
211 #define ZD_CR193 0x0304
212 #define ZD_CR194 0x0308
213 #define ZD_CR195 0x030C
214 #define ZD_CR196 0x0310
215 #define ZD_CR197 0x0314
216 #define ZD_CR198 0x0318
217 #define ZD_CR199 0x031C
218 #define ZD_CR200 0x0320
219 #define ZD_CR201 0x0324
220 #define ZD_CR202 0x0328
221 #define ZD_CR203 0x032C
222 #define ZD_CR204 0x0330
223 #define ZD_CR205 0x0334
224 #define ZD_CR206 0x0338
225 #define ZD_CR207 0x033C
226 #define ZD_CR208 0x0340
227 #define ZD_CR209 0x0344
228 #define ZD_CR210 0x0348
229 #define ZD_CR211 0x034C
230 #define ZD_CR212 0x0350
231 #define ZD_CR213 0x0354
232 #define ZD_CR214 0x0358
233 #define ZD_CR215 0x035C
234 #define ZD_CR216 0x0360
235 #define ZD_CR217 0x0364
236 #define ZD_CR218 0x0368
237 #define ZD_CR219 0x036C
238 #define ZD_CR220 0x0370
239 #define ZD_CR221 0x0374
240 #define ZD_CR222 0x0378
241 #define ZD_CR223 0x037C
242 #define ZD_CR224 0x0380
243 #define ZD_CR225 0x0384
244 #define ZD_CR226 0x0388
245 #define ZD_CR227 0x038C
246 #define ZD_CR228 0x0390
247 #define ZD_CR229 0x0394
248 #define ZD_CR230 0x0398
249 #define ZD_CR231 0x039C
250 #define ZD_CR232 0x03A0
251 #define ZD_CR233 0x03A4
252 #define ZD_CR234 0x03A8
253 #define ZD_CR235 0x03AC
254 #define ZD_CR236 0x03B0
256 #define ZD_CR240 0x03C0
257 #define ZD_CR241 0x03C4
258 #define ZD_CR242 0x03C8
259 #define ZD_CR243 0x03CC
260 #define ZD_CR244 0x03D0
261 #define ZD_CR245 0x03D4
263 #define ZD_CR251 0x03EC
264 #define ZD_CR252 0x03F0
265 #define ZD_CR253 0x03F4
266 #define ZD_CR254 0x03F8
267 #define ZD_CR255 0x03FC
269 #define ZD_RF_IF_CLK 0x0400
270 #define ZD_RF_IF_DATA 0x0404
271 #define ZD_PE1_PE2 0x0408
272 #define ZD_PE2_DLY 0x040C
273 #define ZD_LE1 0x0410
274 #define ZD_LE2 0x0414
275 #define ZD_GPI_EN 0x0418
276 #define ZD_RADIO_PD 0x042C
277 #define ZD_RF2948_PD 0x042C
280 #define ZD_LED1 0x0430
281 #define ZD_LED2 0x0434
285 #define ZD_EnablePSManualAGC 0x043C // 1: enable
286 #define ZD_CONFIGPhilips 0x0440
287 #define ZD_SA2400_SER_AP 0x0444
288 #define ZD_I2C_WRITE 0x0444 // Same as SA2400_SER_AP (for compatible with ZD1201)
289 #define ZD_SA2400_SER_RP 0x0448
292 #define ZD_RADIO_PE 0x0458
293 #define ZD_RstBusMaster 0x045C
295 #define ZD_RFCFG 0x0464
297 #define ZD_HSTSCHG 0x046C
299 #define ZD_PHY_ON 0x0474
300 #define ZD_RX_DELAY 0x0478
301 #define ZD_RX_PE_DELAY 0x047C
304 #define ZD_GPIO_1 0x0490
305 #define ZD_GPIO_2 0x0494
308 #define ZD_EncryBufMux 0x04A8
311 #define ZD_PS_Ctrl 0x0500
312 #define ZD_ADDA_PwrDwn_Ctrl 0x0504
313 #define ZD_ADDA_MBIAS_WarmTime 0x0508
314 #define ZD_MAC_PS_STATE 0x050C
315 #define ZD_InterruptCtrl 0x0510
316 #define ZD_TSF_LowPart 0x0514
317 #define ZD_TSF_HighPart 0x0518
318 #define ZD_ATIMWndPeriod 0x051C
319 #define ZD_BCNInterval 0x0520
320 #define ZD_Pre_TBTT 0x0524 //In unit of TU(1024us)
323 #define ZD_UART_RBR_THR_DLL 0x0540
324 #define ZD_UART_DLM_IER 0x0544
325 #define ZD_UART_IIR_FCR 0x0548
326 #define ZD_UART_LCR 0x054c
327 #define ZD_UART_MCR 0x0550
328 #define ZD_UART_LSR 0x0554
329 #define ZD_UART_MSR 0x0558
330 #define ZD_UART_ECR 0x055c
331 #define ZD_UART_STATUS 0x0560
333 #define ZD_PCI_TxAddr_p1 0x0600
334 #define ZD_PCI_TxAddr_p2 0x0604
335 #define ZD_PCI_RxAddr_p1 0x0608
336 #define ZD_PCI_RxAddr_p2 0x060C
337 #define ZD_MACAddr_P1 0x0610
338 #define ZD_MACAddr_P2 0x0614
339 #define ZD_BSSID_P1 0x0618
340 #define ZD_BSSID_P2 0x061C
341 #define ZD_BCNPLCPCfg 0x0620
342 #define ZD_GroupHash_P1 0x0624
343 #define ZD_GroupHash_P2 0x0628
344 #define ZD_RX_TIMEOUT 0x062C
346 #define ZD_BasicRateTbl 0x0630
347 #define ZD_MandatoryRateTbl 0x0634
348 #define ZD_RTS_CTS_Rate 0x0638
354 // 0x14 * slot time(if is 2us) = 40us = wep init time.
356 // So if we change slot time, change 0x14 to let wep init time close to 40us.
357 #define ZD_Wep_Protect 0x063C
358 #define ZD_RX_THRESHOLD 0x0640
361 #define RFCFG1 0x0644
363 #define ZD_TX_PE_CTRL 0x0644
367 #define ZD_AfterPNP 0x0648
371 #define ZD_AckTime80211 0x0658
374 #define ZD_Rx_OFFSET 0x065c
377 #define ZD_BCNLENGTH 0x0664
379 #define ZD_PHYDelay 0x066C
380 #define ZD_BCNFIFO 0x0670
381 #define ZD_SnifferOn 0x0674
382 #define ZD_EncryType 0x0678
384 #define ZD_RetryMAX 0x067C
386 #define ZD_CtlReg1 0x0680 //Bit0: IBSS mode
388 //Bit2-4 : Highest basic rate
390 //Bit6: PLCP weight select
392 #define ZD_DeviceState 0x0684
393 #define ZD_UnderrunCnt 0x0688
394 #define ZD_Rx_Filter 0x068c
395 #define ZD_Ack_Timeout_Ext 0x0690
396 #define ZD_BCN_FIFO_Semaphore 0x0694
397 #define ZD_IFS_Value 0x0698
398 #define ZD_RX_TIME_OUT 0x069C
399 #define ZD_TotalRxFrm 0x06A0
400 #define ZD_CRC32Cnt 0x06A4
401 #define ZD_CRC16Cnt 0x06A8
402 #define ZD_DecrypErr_UNI 0x06AC
403 #define ZD_RxFIFOOverrun 0x06B0
405 #define ZD_DecrypErr_Mul 0x06BC
407 #define ZD_NAV_CNT 0x06C4
408 #define ZD_NAV_CCA 0x06C8
409 #define ZD_RetryCnt 0x06CC
411 #define ZD_ReadTcbAddress 0x06E8
412 #define ZD_ReadRfdAddress 0x06EC
413 #define ZD_CWmin_CWmax 0x06F0
414 #define ZD_TotalTxFrm 0x06F4
416 #define ZD_CAM_MODE 0x0700
417 #define ZD_CAM_ROLL_TB_LOW 0x0704
418 #define ZD_CAM_ROLL_TB_HIGH 0x0708
419 #define ZD_CAM_ADDRESS 0x070C
420 #define ZD_CAM_DATA 0x0710
422 #define ZD_ROMDIR 0x0714
424 #define ZD_DECRY_ERR_FLG_LOW 0x0714
425 #define ZD_DECRY_ERR_FLG_HIGH 0x0718
427 #define ZD_WEPKey0 0x0720
428 #define ZD_WEPKey1 0x0724
429 #define ZD_WEPKey2 0x0728
430 #define ZD_WEPKey3 0x072C
431 #define ZD_WEPKey4 0x0730
432 #define ZD_WEPKey5 0x0734
433 #define ZD_WEPKey6 0x0738
434 #define ZD_WEPKey7 0x073C
435 #define ZD_WEPKey8 0x0740
436 #define ZD_WEPKey9 0x0744
437 #define ZD_WEPKey10 0x0748
438 #define ZD_WEPKey11 0x074C
439 #define ZD_WEPKey12 0x0750
440 #define ZD_WEPKey13 0x0754
441 #define ZD_WEPKey14 0x0758
442 #define ZD_WEPKey15 0x075c
443 #define ZD_TKIP_MODE 0x0760
445 #define ZD_TX_CCM_MODE 0x0B80
446 #define ZD_TX_CCM_MASK 0x0B84
447 #define ZD_RX_CCM_MODE 0x0C88
448 #define ZD_RX_CCM_MASK 0x0C8C
451 #define ZD_EEPROM_PROTECT0 0x0758
452 #define ZD_EEPROM_PROTECT1 0x075C
454 #define ZD_Dbg_FIFO_Rd 0x0800
455 #define ZD_Dbg_Select 0x0804
456 #define ZD_FIFO_Length 0x0808
459 //#define RF_Mode 0x080C
460 #define ZD_RSSI_MGC 0x0810
462 #define ZD_PON 0x0818
463 #define ZD_Rx_ON 0x081C
464 #define ZD_Tx_ON 0x0820
465 #define ZD_CHIP_EN 0x0824
466 #define ZD_LO_SW 0x0828
467 #define ZD_TxRx_SW 0x082C
468 #define ZD_S_MD 0x0830
470 #define ZD_USB_DEBUG_PORT 0x0888
472 // EEPROM Memmory Map Region
473 #define ZD_EEPROM_START_ADDRESS 0x0900
474 #define ZD_E2P_SUBID 0x0900
475 #define ZD_E2P_POD 0x0904
476 #define ZD_E2P_MACADDR_P1 0x0908
477 #define ZD_E2P_MACADDR_P2 0x090C
478 #define ZD_E2P_PWR_CAL_VALUE1 0x0910
479 #define ZD_E2P_PWR_CAL_VALUE2 0x0914
480 #define ZD_E2P_PWR_CAL_VALUE3 0x0918
481 #define ZD_E2P_PWR_CAL_VALUE4 0x091c
482 #define ZD_E2P_PWR_INT_VALUE1 0x0920
483 #define ZD_E2P_PWR_INT_VALUE2 0x0924
484 #define ZD_E2P_PWR_INT_VALUE3 0x0928
485 #define ZD_E2P_PWR_INT_VALUE4 0x092c
486 #define ZD_E2P_ALLOWED_CHANNEL 0x0930
490 #define E2P_DEVICE_VER 0x0940
491 #define E2P_PHY_REG 0x094A
492 #define E2P_36M_CAL_VALUE 0x0950
493 #define ZD_E2P_36M_CAL_VALUE2 0x0954
494 #define ZD_E2P_36M_CAL_VALUE3 0x0958
495 #define ZD_E2P_36M_CAL_VALUE4 0x095C
497 #define ZD_E2P_11A_INT_VALUE1 0x0960 //802.11a IntValue1 for All Rate
498 #define ZD_E2P_11A_INT_VALUE2 0x0964 //802.11a IntValue2 for All Rate
499 #define ZD_E2P_11A_INT_VALUE3 0x0968 //802.11a IntValue3 for All Rate
500 #define ZD_E2P_48M_CAL_VALUE2 0x0974
501 #define ZD_E2P_48M_CAL_VALUE3 0x0978
502 #define ZD_E2P_48M_CAL_VALUE4 0x097C
504 #define ZD_E2P_A36M_CAL_VALUE 0x0980 //802.11a SetPoint for 36~6M
505 #define ZD_E2P_A36M_CAL_VALUE2 0x0984
506 #define ZD_E2P_A36M_CAL_VALUE3 0x0988
507 #define ZD_E2P_A36M_CAL_VALUE4 0x098C
508 #define ZD_E2P_54M_CAL_VALUE2 0x0994
509 #define ZD_E2P_54M_CAL_VALUE3 0x0998
510 #define ZD_E2P_54M_CAL_VALUE4 0x099C
513 #define ZD_E2P_A54M_CAL_VALUE 0x09A0 //802.11a SetPoint for 54/48M
514 #define ZD_E2P_A54M_CAL_VALUE2 0x09A4
515 #define ZD_E2P_A54M_CAL_VALUE3 0x09A8
516 #define ZD_E2P_A54M_CAL_VALUE4 0x09AC
517 #define ZD_E2P_11A_INT_VALUE4 0x096C //802.11a IntValue4 for All Rate
520 #define E2P_36M_INT_VALUE 0x0960
521 #define E2P_48M_CAL_VALUE 0x0970
522 #define E2P_48M_INT_VALUE 0x0980
523 #define E2P_54M_CAL_VALUE 0x0990
524 #define E2P_54M_INT_VALUE 0x09A0
527 #ifndef fNEW_CODE_MAP
528 #define E2P_END 0x09F0
530 #define E2P_END 0x09FC
533 #define ZD_E2P_PHY_REG 0x0934
534 #define ZD_E2P_REGION_CODE 0x0960
535 #define ZD_E2P_FEATURE_BITMAP 0x0964
536 #define ZD_E2P_END 0x0968
540 #define ZD_RetryMAX 0x0B28
545 #define FW_FIRMWARE_VER 0x0B00
546 #define FW_USB_SPEED 0x0B01
547 #define FW_FIX_TX_RATE 0x0B02
548 #define FW_LINK_STATUS 0x0B03
549 #define FW_SOFT_RESET 0x0B04
550 #define FW_FLASH_CHK 0x0B05
551 #elif defined(ZD1211B)
552 #define FW_FIRMWARE_VER 0x0F00
553 #define FW_USB_SPEED 0x0F01
554 #define FW_FIX_TX_RATE 0x0F02
555 #define FW_LINK_STATUS 0x0F03
556 #define FW_SOFT_RESET 0x0F04
557 #define FW_FLASH_CHK 0x0F05
560 #define ZD1211_CLOCK_CTRL 0x8540
561 #define bZD1211_CLOCK_EEPROM 0
562 #define bmZD1211_CLOCK_EEPROM mBIT(bZD1211_CLOCK_EEPROM)
563 #define UMAC_EPROM_ROM_ADDR 0x862A
564 #define UMAC_EPROM_RAM_ADDR 0x862B
565 #define UMAC_EPROM_DMA_LEN_DIR 0x862C
566 #define bmEPROM_XFER_DIR BIT_15
567 #define UMAC_WAIT_STATE 0x8801
571 #define ZD_TX_PWR_CTRL_1 0x0B00
572 #define ZD_TX_PWR_CTRL_2 0x0B04
573 #define ZD_TX_PWR_CTRL_3 0x0B08
574 #define ZD_TX_PWR_CTRL_4 0x0B0C
576 #define ZD_EPP_ROM_ADDRESS 0x0A04
577 #define ZD_EPP_SRAM_ADDRESS 0x0A08
578 #define ZD_EPP_LENG_DIR 0x0A0C
579 #define ZD_EPP_CLOCK_DIV 0x0A10
580 #define ZD_EPP_KEY_PROT 0x0A14
582 #define E2P_ADDR_COUNTER 0x0a04
583 #define E2P_CLOCK 0x0a10
584 #define E2P_DMA_LENGTH 0x0a0c
585 #define E2P_WRITE_PROTECT 0x0a14
589 #define ZD_MIC_START_ADDR0 0x0D00
592 #define ZD_MIC_BLOCK0_LEN 0x0D04
593 #define ZD_MIC_START_ADDR1 0x0D08
594 #define ZD_MIC_BLOCK1_LEN 0x0D0C
595 #define ZD_MIC_START_ADDR2 0x0D10
596 #define ZD_MIC_BLOCK2_LEN 0x0D14
597 #define ZD_MIC_START_ADDR3 0x0D18
598 #define ZD_MIC_BLOCK3_LEN 0x0D1C
599 #define ZD_MIC_START_ADDR4 0x0D20
600 #define ZD_MIC_BLOCK4_LEN 0x0D24
601 #define ZD_MIC_START_ADDR5 0x0D28
602 #define ZD_MIC_BLOCK5_LEN 0x0D2C
603 #define ZD_MIC_KEY_LOW 0x0D30
604 #define ZD_MIC_KEY_HIGH 0x0D34
605 #define ZD_MIC_VALUE_LOW 0x0D38
606 #define ZD_MIC_VALUE_HIGH 0x0D3C
607 #define ZD_MIC_STATUS 0x0D40
608 #define ZD_MIC_TOTAL_BLOCK_NUM 0x0D44
609 #define ZD_MIC_WRITE_BACK_ADDRS 0x0D48
610 #define ZD_HOST_ENDIAN 0x0D4C
617 #define SR_16_5M 0x21
618 #define SR_27_5M 0x37
628 void HW_Set_Intersil_Chips(zd_80211Obj_t
*pObj
, U32 ChannelNo
, U8 InitChOnly
);
629 void HW_Set_GCT_Chips(zd_80211Obj_t
*pObj
, U32 ChannelNo
, U8 InitChOnly
);
630 void HW_Set_AL7230B_RF_Chips(zd_80211Obj_t
*pObj
, U32 ChannelNo
, U8 InitChOnly
,U8 MAC_Mode
);
632 void LockPhyReg(zd_80211Obj_t
*pObj
);
633 void UnLockPhyReg(zd_80211Obj_t
*pObj
);
634 void HW_SetSupportedRate(zd_80211Obj_t
*pObj
, U8
*prates
);
635 void HW_EnableBeacon(zd_80211Obj_t
*pObj
, U16 BecaonInterval
, U16 DtimPeriod
, U8 BssType
);
636 U32
HW_GetNow(zd_80211Obj_t
*pObj
);
637 void HW_GetTsf(zd_80211Obj_t
*pObj
, U32
*loTsf
, U32
*hiTsf
);
638 void HW_SetBeaconFIFO(zd_80211Obj_t
*pObj
, U8
*pBeacon
, U16 index
);
639 void HW_SwitchChannel(zd_80211Obj_t
*pObj
, U16 channel
, U8 InitChOnly
, const U8 MAC_Mode
);
640 void HW_SetRfChannel(zd_80211Obj_t
*pObj
, U16 channel
, U8 InitChOnly
, const U8 MAC_Mode
);
642 int HW_HTP(zd_80211Obj_t
*pObj
);
643 void HW_RadioOnOff(zd_80211Obj_t
*pObj
, U8 on
);
644 void HW_Set_IF_Synthesizer(zd_80211Obj_t
*pObj
, U32 InputValue
);
645 void HW_ResetPhy(zd_80211Obj_t
*pObj
);
646 void HW_InitHMAC(zd_80211Obj_t
*pObj
);
647 void HW_UpdateIntegrationValue(zd_80211Obj_t
*pObj
, U32 ChannelNo
,const U8 MAC_Mode
);
649 void HW_WritePhyReg(zd_80211Obj_t
*pObj
, U8 PhyIdx
, U8 PhyValue
);
650 void HW_OverWritePhyRegFromE2P(zd_80211Obj_t
*pObj
);
651 void HW_E2P_AutoPatch(zd_80211Obj_t
*pObj
);
652 void HW_SetSTA_PS(zd_80211Obj_t
*pObj
, U8 op
);
653 void HW_Write_TxGain(zd_80211Obj_t
*pObj
, U32 txgain
);
654 void HW_Set_FilterBand(zd_80211Obj_t
*pObj
, U32 region_code
);
655 void HW_UpdateBcnInterval(zd_80211Obj_t
*pObj
, U16 BcnInterval
);
656 void HW_UpdateATIMWindow(zd_80211Obj_t
*pObj
, U16 AtimWnd
);
657 void HW_UpdatePreTBTT(zd_80211Obj_t
*pObj
, U32 pretbtt
);
660 // for AMAC CAM operation
661 void HW_CAM_Avail(zd_80211Obj_t
*pObj
);
662 void HW_CAM_Write(zd_80211Obj_t
*pObj
, U32 address
, U32 data
);
663 U32
HW_CAM_Read(zd_80211Obj_t
*pObj
, U32 address
);
664 void HW_CAM_SetMAC(zd_80211Obj_t
*pObj
, U16 aid
, U8
*pMAC
);
665 void HW_CAM_GetMAC(zd_80211Obj_t
*pObj
, U16 aid
, U8
*pMac
);
666 void HW_CAM_SetEncryType(zd_80211Obj_t
*pObj
, U16 aid
, U8 encryType
);
667 U8
HW_CAM_GetEncryType(zd_80211Obj_t
*pObj
, U16 aid
);
668 void HW_CAM_SetKey(zd_80211Obj_t
*pObj
, U16 aid
, U8 keyLength
, U8
*pKey
);
669 void HW_CAM_GetKey(zd_80211Obj_t
*pObj
, U16 aid
, U8 keyLength
, U8
*pKey
);
670 void HW_CAM_UpdateRollTbl(zd_80211Obj_t
*pObj
, U16 aid
);
671 void HW_CAM_ResetRollTbl(zd_80211Obj_t
*pObj
);
672 void HW_CAM_ClearRollTbl(zd_80211Obj_t
*pObj
, U16 aid
);
673 //void HW_ConfigDynaKey(zd_80211Obj_t *pObj, U16 aid, U8 *pMac, U8 *pKey, U8 KeyLength, U8 encryType);
674 void HW_ConfigDynaKey(zd_80211Obj_t
*pObj
, U16 aid
, U8
*pMac
, U8
*pKey
, U8 KeyLength
, U8 encryType
, U8 change_enc
);
675 void HW_ConfigStatKey(zd_80211Obj_t
*pObj
, U8
*pKey
, U8 keyLen
, U32 startAddr
);
676 void HW_GetStatKey(zd_80211Obj_t
*pObj
);
677 void HW_EEPROM_ACCESS(zd_80211Obj_t
*pObj
, U16 RamAddr
, U16 RomAddr
, U32 length
, U8 bWrite
);
681 void HW_Write_TxGain0(zd_80211Obj_t
*pObj
, U8
*pTxGain
, U8 TxPwrType
);
682 void HW_Write_TxGain1(zd_80211Obj_t
*pObj
, U8 txgain
, U8 TxPwrType
);
683 void HW_Write_TxGain2(zd_80211Obj_t
*pObj
, U8 TxPwrType
);