0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014 #ifndef RT2500USB_H
0015 #define RT2500USB_H
0016
0017
0018
0019
0020 #define RF2522 0x0000
0021 #define RF2523 0x0001
0022 #define RF2524 0x0002
0023 #define RF2525 0x0003
0024 #define RF2525E 0x0005
0025 #define RF5222 0x0010
0026
0027
0028
0029
0030 #define RT2570_VERSION_B 2
0031 #define RT2570_VERSION_C 3
0032 #define RT2570_VERSION_D 4
0033
0034
0035
0036
0037
0038 #define DEFAULT_RSSI_OFFSET 120
0039
0040
0041
0042
0043 #define CSR_REG_BASE 0x0400
0044 #define CSR_REG_SIZE 0x0100
0045 #define EEPROM_BASE 0x0000
0046 #define EEPROM_SIZE 0x006e
0047 #define BBP_BASE 0x0000
0048 #define BBP_SIZE 0x0060
0049 #define RF_BASE 0x0004
0050 #define RF_SIZE 0x0010
0051
0052
0053
0054
0055 #define NUM_TX_QUEUES 2
0056
0057
0058
0059
0060
0061
0062
0063
0064
0065 #define MAC_CSR0 0x0400
0066
0067
0068
0069
0070
0071
0072
0073 #define MAC_CSR1 0x0402
0074 #define MAC_CSR1_SOFT_RESET FIELD16(0x00000001)
0075 #define MAC_CSR1_BBP_RESET FIELD16(0x00000002)
0076 #define MAC_CSR1_HOST_READY FIELD16(0x00000004)
0077
0078
0079
0080
0081 #define MAC_CSR2 0x0404
0082 #define MAC_CSR2_BYTE0 FIELD16(0x00ff)
0083 #define MAC_CSR2_BYTE1 FIELD16(0xff00)
0084
0085
0086
0087
0088 #define MAC_CSR3 0x0406
0089 #define MAC_CSR3_BYTE2 FIELD16(0x00ff)
0090 #define MAC_CSR3_BYTE3 FIELD16(0xff00)
0091
0092
0093
0094
0095 #define MAC_CSR4 0X0408
0096 #define MAC_CSR4_BYTE4 FIELD16(0x00ff)
0097 #define MAC_CSR4_BYTE5 FIELD16(0xff00)
0098
0099
0100
0101
0102 #define MAC_CSR5 0x040a
0103 #define MAC_CSR5_BYTE0 FIELD16(0x00ff)
0104 #define MAC_CSR5_BYTE1 FIELD16(0xff00)
0105
0106
0107
0108
0109 #define MAC_CSR6 0x040c
0110 #define MAC_CSR6_BYTE2 FIELD16(0x00ff)
0111 #define MAC_CSR6_BYTE3 FIELD16(0xff00)
0112
0113
0114
0115
0116 #define MAC_CSR7 0x040e
0117 #define MAC_CSR7_BYTE4 FIELD16(0x00ff)
0118 #define MAC_CSR7_BYTE5 FIELD16(0xff00)
0119
0120
0121
0122
0123 #define MAC_CSR8 0x0410
0124 #define MAC_CSR8_MAX_FRAME_UNIT FIELD16(0x0fff)
0125
0126
0127
0128
0129
0130
0131
0132
0133
0134
0135
0136
0137 #define MAC_CSR9 0x0412
0138 #define MAC_CSR10 0x0414
0139 #define MAC_CSR11 0x0416
0140 #define MAC_CSR12 0x0418
0141 #define MAC_CSR13 0x041a
0142 #define MAC_CSR14 0x041c
0143 #define MAC_CSR15 0x041e
0144 #define MAC_CSR16 0x0420
0145
0146
0147
0148
0149
0150
0151
0152
0153
0154
0155
0156 #define MAC_CSR17 0x0422
0157 #define MAC_CSR17_SET_STATE FIELD16(0x0001)
0158 #define MAC_CSR17_BBP_DESIRE_STATE FIELD16(0x0006)
0159 #define MAC_CSR17_RF_DESIRE_STATE FIELD16(0x0018)
0160 #define MAC_CSR17_BBP_CURR_STATE FIELD16(0x0060)
0161 #define MAC_CSR17_RF_CURR_STATE FIELD16(0x0180)
0162 #define MAC_CSR17_PUT_TO_SLEEP FIELD16(0x0200)
0163
0164
0165
0166
0167
0168
0169
0170 #define MAC_CSR18 0x0424
0171 #define MAC_CSR18_DELAY_AFTER_BEACON FIELD16(0x00ff)
0172 #define MAC_CSR18_BEACONS_BEFORE_WAKEUP FIELD16(0x7f00)
0173 #define MAC_CSR18_AUTO_WAKE FIELD16(0x8000)
0174
0175
0176
0177
0178
0179
0180 #define MAC_CSR19 0x0426
0181 #define MAC_CSR19_VAL0 FIELD16(0x0001)
0182 #define MAC_CSR19_VAL1 FIELD16(0x0002)
0183 #define MAC_CSR19_VAL2 FIELD16(0x0004)
0184 #define MAC_CSR19_VAL3 FIELD16(0x0008)
0185 #define MAC_CSR19_VAL4 FIELD16(0x0010)
0186 #define MAC_CSR19_VAL5 FIELD16(0x0020)
0187 #define MAC_CSR19_VAL6 FIELD16(0x0040)
0188 #define MAC_CSR19_VAL7 FIELD16(0x0080)
0189 #define MAC_CSR19_DIR0 FIELD16(0x0100)
0190 #define MAC_CSR19_DIR1 FIELD16(0x0200)
0191 #define MAC_CSR19_DIR2 FIELD16(0x0400)
0192 #define MAC_CSR19_DIR3 FIELD16(0x0800)
0193 #define MAC_CSR19_DIR4 FIELD16(0x1000)
0194 #define MAC_CSR19_DIR5 FIELD16(0x2000)
0195 #define MAC_CSR19_DIR6 FIELD16(0x4000)
0196 #define MAC_CSR19_DIR7 FIELD16(0x8000)
0197
0198
0199
0200
0201
0202
0203
0204 #define MAC_CSR20 0x0428
0205 #define MAC_CSR20_ACTIVITY FIELD16(0x0001)
0206 #define MAC_CSR20_LINK FIELD16(0x0002)
0207 #define MAC_CSR20_ACTIVITY_POLARITY FIELD16(0x0004)
0208
0209
0210
0211
0212
0213
0214 #define MAC_CSR21 0x042a
0215 #define MAC_CSR21_ON_PERIOD FIELD16(0x00ff)
0216 #define MAC_CSR21_OFF_PERIOD FIELD16(0xff00)
0217
0218
0219
0220
0221 #define MAC_CSR22 0x042c
0222
0223
0224
0225
0226
0227
0228
0229
0230
0231 #define TXRX_CSR0 0x0440
0232 #define TXRX_CSR0_ALGORITHM FIELD16(0x0007)
0233 #define TXRX_CSR0_IV_OFFSET FIELD16(0x01f8)
0234 #define TXRX_CSR0_KEY_ID FIELD16(0x1e00)
0235
0236
0237
0238
0239
0240
0241
0242 #define TXRX_CSR1 0x0442
0243 #define TXRX_CSR1_ACK_TIMEOUT FIELD16(0x00ff)
0244 #define TXRX_CSR1_TSF_OFFSET FIELD16(0x7f00)
0245 #define TXRX_CSR1_AUTO_SEQUENCE FIELD16(0x8000)
0246
0247
0248
0249
0250
0251
0252
0253
0254
0255
0256
0257
0258
0259 #define TXRX_CSR2 0x0444
0260 #define TXRX_CSR2_DISABLE_RX FIELD16(0x0001)
0261 #define TXRX_CSR2_DROP_CRC FIELD16(0x0002)
0262 #define TXRX_CSR2_DROP_PHYSICAL FIELD16(0x0004)
0263 #define TXRX_CSR2_DROP_CONTROL FIELD16(0x0008)
0264 #define TXRX_CSR2_DROP_NOT_TO_ME FIELD16(0x0010)
0265 #define TXRX_CSR2_DROP_TODS FIELD16(0x0020)
0266 #define TXRX_CSR2_DROP_VERSION_ERROR FIELD16(0x0040)
0267 #define TXRX_CSR2_DROP_MULTICAST FIELD16(0x0200)
0268 #define TXRX_CSR2_DROP_BROADCAST FIELD16(0x0400)
0269
0270
0271
0272
0273
0274
0275 #define TXRX_CSR3 0x0446
0276 #define TXRX_CSR4 0x0448
0277
0278
0279
0280
0281 #define TXRX_CSR5 0x044a
0282 #define TXRX_CSR5_BBP_ID0 FIELD16(0x007f)
0283 #define TXRX_CSR5_BBP_ID0_VALID FIELD16(0x0080)
0284 #define TXRX_CSR5_BBP_ID1 FIELD16(0x7f00)
0285 #define TXRX_CSR5_BBP_ID1_VALID FIELD16(0x8000)
0286
0287
0288
0289
0290 #define TXRX_CSR6 0x044c
0291 #define TXRX_CSR6_BBP_ID0 FIELD16(0x007f)
0292 #define TXRX_CSR6_BBP_ID0_VALID FIELD16(0x0080)
0293 #define TXRX_CSR6_BBP_ID1 FIELD16(0x7f00)
0294 #define TXRX_CSR6_BBP_ID1_VALID FIELD16(0x8000)
0295
0296
0297
0298
0299 #define TXRX_CSR7 0x044e
0300 #define TXRX_CSR7_BBP_ID0 FIELD16(0x007f)
0301 #define TXRX_CSR7_BBP_ID0_VALID FIELD16(0x0080)
0302 #define TXRX_CSR7_BBP_ID1 FIELD16(0x7f00)
0303 #define TXRX_CSR7_BBP_ID1_VALID FIELD16(0x8000)
0304
0305
0306
0307
0308 #define TXRX_CSR8 0x0450
0309 #define TXRX_CSR8_BBP_ID0 FIELD16(0x007f)
0310 #define TXRX_CSR8_BBP_ID0_VALID FIELD16(0x0080)
0311 #define TXRX_CSR8_BBP_ID1 FIELD16(0x7f00)
0312 #define TXRX_CSR8_BBP_ID1_VALID FIELD16(0x8000)
0313
0314
0315
0316
0317 #define TXRX_CSR9 0x0452
0318
0319
0320
0321
0322 #define TXRX_CSR10 0x0454
0323 #define TXRX_CSR10_AUTORESPOND_PREAMBLE FIELD16(0x0004)
0324
0325
0326
0327
0328 #define TXRX_CSR11 0x0456
0329
0330
0331
0332
0333 #define TXRX_CSR12 0x0458
0334 #define TXRX_CSR13 0x045a
0335 #define TXRX_CSR14 0x045c
0336 #define TXRX_CSR15 0x045e
0337 #define TXRX_CSR16 0x0460
0338 #define TXRX_CSR17 0x0462
0339
0340
0341
0342
0343 #define TXRX_CSR18 0x0464
0344 #define TXRX_CSR18_OFFSET FIELD16(0x000f)
0345 #define TXRX_CSR18_INTERVAL FIELD16(0xfff0)
0346
0347
0348
0349
0350
0351
0352
0353
0354 #define TXRX_CSR19 0x0466
0355 #define TXRX_CSR19_TSF_COUNT FIELD16(0x0001)
0356 #define TXRX_CSR19_TSF_SYNC FIELD16(0x0006)
0357 #define TXRX_CSR19_TBCN FIELD16(0x0008)
0358 #define TXRX_CSR19_BEACON_GEN FIELD16(0x0010)
0359
0360
0361
0362
0363
0364
0365 #define TXRX_CSR20 0x0468
0366 #define TXRX_CSR20_OFFSET FIELD16(0x1fff)
0367 #define TXRX_CSR20_BCN_EXPECT_WINDOW FIELD16(0xe000)
0368
0369
0370
0371
0372 #define TXRX_CSR21 0x046a
0373
0374
0375
0376
0377
0378
0379
0380
0381
0382
0383
0384
0385
0386
0387
0388
0389 #define SEC_CSR0 0x0480
0390 #define SEC_CSR1 0x0482
0391 #define SEC_CSR2 0x0484
0392 #define SEC_CSR3 0x0486
0393 #define SEC_CSR4 0x0488
0394 #define SEC_CSR5 0x048a
0395 #define SEC_CSR6 0x048c
0396 #define SEC_CSR7 0x048e
0397
0398
0399
0400
0401
0402
0403
0404
0405
0406
0407
0408 #define SEC_CSR8 0x0490
0409 #define SEC_CSR9 0x0492
0410 #define SEC_CSR10 0x0494
0411 #define SEC_CSR11 0x0496
0412 #define SEC_CSR12 0x0498
0413 #define SEC_CSR13 0x049a
0414 #define SEC_CSR14 0x049c
0415 #define SEC_CSR15 0x049e
0416
0417
0418
0419
0420
0421
0422
0423
0424
0425
0426
0427 #define SEC_CSR16 0x04a0
0428 #define SEC_CSR17 0x04a2
0429 #define SEC_CSR18 0X04A4
0430 #define SEC_CSR19 0x04a6
0431 #define SEC_CSR20 0x04a8
0432 #define SEC_CSR21 0x04aa
0433 #define SEC_CSR22 0x04ac
0434 #define SEC_CSR23 0x04ae
0435
0436
0437
0438
0439
0440
0441
0442
0443
0444
0445
0446 #define SEC_CSR24 0x04b0
0447 #define SEC_CSR25 0x04b2
0448 #define SEC_CSR26 0x04b4
0449 #define SEC_CSR27 0x04b6
0450 #define SEC_CSR28 0x04b8
0451 #define SEC_CSR29 0x04ba
0452 #define SEC_CSR30 0x04bc
0453 #define SEC_CSR31 0x04be
0454
0455 #define KEY_ENTRY(__idx) \
0456 ( SEC_CSR0 + ((__idx) * 16) )
0457
0458
0459
0460
0461
0462
0463
0464
0465 #define PHY_CSR0 0x04c0
0466
0467
0468
0469
0470 #define PHY_CSR1 0x04c2
0471
0472
0473
0474
0475
0476
0477
0478
0479
0480
0481
0482 #define PHY_CSR2 0x04c4
0483 #define PHY_CSR2_LNA FIELD16(0x0002)
0484 #define PHY_CSR2_LNA_MODE FIELD16(0x3000)
0485
0486
0487
0488
0489 #define PHY_CSR3 0x04c6
0490
0491
0492
0493
0494 #define PHY_CSR4 0x04c8
0495 #define PHY_CSR4_LOW_RF_LE FIELD16(0x0001)
0496
0497
0498
0499
0500
0501 #define PHY_CSR5 0x04ca
0502 #define PHY_CSR5_CCK FIELD16(0x0003)
0503 #define PHY_CSR5_CCK_FLIP FIELD16(0x0004)
0504
0505
0506
0507
0508
0509 #define PHY_CSR6 0x04cc
0510 #define PHY_CSR6_OFDM FIELD16(0x0003)
0511 #define PHY_CSR6_OFDM_FLIP FIELD16(0x0004)
0512
0513
0514
0515
0516
0517
0518
0519 #define PHY_CSR7 0x04ce
0520 #define PHY_CSR7_DATA FIELD16(0x00ff)
0521 #define PHY_CSR7_REG_ID FIELD16(0x7f00)
0522 #define PHY_CSR7_READ_CONTROL FIELD16(0x8000)
0523
0524
0525
0526
0527
0528 #define PHY_CSR8 0x04d0
0529 #define PHY_CSR8_BUSY FIELD16(0x0001)
0530
0531
0532
0533
0534
0535 #define PHY_CSR9 0x04d2
0536 #define PHY_CSR9_RF_VALUE FIELD16(0xffff)
0537
0538
0539
0540
0541
0542
0543
0544
0545
0546 #define PHY_CSR10 0x04d4
0547 #define PHY_CSR10_RF_VALUE FIELD16(0x00ff)
0548 #define PHY_CSR10_RF_NUMBER_OF_BITS FIELD16(0x1f00)
0549 #define PHY_CSR10_RF_IF_SELECT FIELD16(0x2000)
0550 #define PHY_CSR10_RF_PLL_LD FIELD16(0x4000)
0551 #define PHY_CSR10_RF_BUSY FIELD16(0x8000)
0552
0553
0554
0555
0556
0557 #define STA_CSR0 0x04e0
0558 #define STA_CSR0_FCS_ERROR FIELD16(0xffff)
0559
0560
0561
0562
0563 #define STA_CSR1 0x04e2
0564
0565
0566
0567
0568 #define STA_CSR2 0x04e4
0569
0570
0571
0572
0573
0574 #define STA_CSR3 0x04e6
0575 #define STA_CSR3_FALSE_CCA_ERROR FIELD16(0xffff)
0576
0577
0578
0579
0580 #define STA_CSR4 0x04e8
0581
0582
0583
0584
0585 #define STA_CSR5 0x04ea
0586
0587
0588
0589
0590 #define STA_CSR6 0x04ec
0591 #define STA_CSR7 0x04ee
0592 #define STA_CSR8 0x04f0
0593 #define STA_CSR9 0x04f2
0594 #define STA_CSR10 0x04f4
0595
0596
0597
0598
0599
0600
0601
0602
0603
0604 #define BBP_R2_TX_ANTENNA FIELD8(0x03)
0605 #define BBP_R2_TX_IQ_FLIP FIELD8(0x04)
0606
0607
0608
0609
0610 #define BBP_R14_RX_ANTENNA FIELD8(0x03)
0611 #define BBP_R14_RX_IQ_FLIP FIELD8(0x04)
0612
0613
0614
0615
0616
0617
0618
0619
0620 #define RF1_TUNER FIELD32(0x00020000)
0621
0622
0623
0624
0625 #define RF3_TUNER FIELD32(0x00000100)
0626 #define RF3_TXPOWER FIELD32(0x00003e00)
0627
0628
0629
0630
0631
0632
0633
0634
0635 #define EEPROM_MAC_ADDR_0 0x0002
0636 #define EEPROM_MAC_ADDR_BYTE0 FIELD16(0x00ff)
0637 #define EEPROM_MAC_ADDR_BYTE1 FIELD16(0xff00)
0638 #define EEPROM_MAC_ADDR1 0x0003
0639 #define EEPROM_MAC_ADDR_BYTE2 FIELD16(0x00ff)
0640 #define EEPROM_MAC_ADDR_BYTE3 FIELD16(0xff00)
0641 #define EEPROM_MAC_ADDR_2 0x0004
0642 #define EEPROM_MAC_ADDR_BYTE4 FIELD16(0x00ff)
0643 #define EEPROM_MAC_ADDR_BYTE5 FIELD16(0xff00)
0644
0645
0646
0647
0648
0649
0650
0651
0652
0653
0654
0655 #define EEPROM_ANTENNA 0x000b
0656 #define EEPROM_ANTENNA_NUM FIELD16(0x0003)
0657 #define EEPROM_ANTENNA_TX_DEFAULT FIELD16(0x000c)
0658 #define EEPROM_ANTENNA_RX_DEFAULT FIELD16(0x0030)
0659 #define EEPROM_ANTENNA_LED_MODE FIELD16(0x01c0)
0660 #define EEPROM_ANTENNA_DYN_TXAGC FIELD16(0x0200)
0661 #define EEPROM_ANTENNA_HARDWARE_RADIO FIELD16(0x0400)
0662 #define EEPROM_ANTENNA_RF_TYPE FIELD16(0xf800)
0663
0664
0665
0666
0667
0668
0669
0670 #define EEPROM_NIC 0x000c
0671 #define EEPROM_NIC_CARDBUS_ACCEL FIELD16(0x0001)
0672 #define EEPROM_NIC_DYN_BBP_TUNE FIELD16(0x0002)
0673 #define EEPROM_NIC_CCK_TX_POWER FIELD16(0x000c)
0674
0675
0676
0677
0678
0679 #define EEPROM_GEOGRAPHY 0x000d
0680 #define EEPROM_GEOGRAPHY_GEO FIELD16(0x0f00)
0681
0682
0683
0684
0685 #define EEPROM_BBP_START 0x000e
0686 #define EEPROM_BBP_SIZE 16
0687 #define EEPROM_BBP_VALUE FIELD16(0x00ff)
0688 #define EEPROM_BBP_REG_ID FIELD16(0xff00)
0689
0690
0691
0692
0693 #define EEPROM_TXPOWER_START 0x001e
0694 #define EEPROM_TXPOWER_SIZE 7
0695 #define EEPROM_TXPOWER_1 FIELD16(0x00ff)
0696 #define EEPROM_TXPOWER_2 FIELD16(0xff00)
0697
0698
0699
0700
0701 #define EEPROM_BBPTUNE 0x0030
0702 #define EEPROM_BBPTUNE_THRESHOLD FIELD16(0x00ff)
0703
0704
0705
0706
0707 #define EEPROM_BBPTUNE_R24 0x0031
0708 #define EEPROM_BBPTUNE_R24_LOW FIELD16(0x00ff)
0709 #define EEPROM_BBPTUNE_R24_HIGH FIELD16(0xff00)
0710
0711
0712
0713
0714 #define EEPROM_BBPTUNE_R25 0x0032
0715 #define EEPROM_BBPTUNE_R25_LOW FIELD16(0x00ff)
0716 #define EEPROM_BBPTUNE_R25_HIGH FIELD16(0xff00)
0717
0718
0719
0720
0721 #define EEPROM_BBPTUNE_R61 0x0033
0722 #define EEPROM_BBPTUNE_R61_LOW FIELD16(0x00ff)
0723 #define EEPROM_BBPTUNE_R61_HIGH FIELD16(0xff00)
0724
0725
0726
0727
0728 #define EEPROM_BBPTUNE_VGC 0x0034
0729 #define EEPROM_BBPTUNE_VGCUPPER FIELD16(0x00ff)
0730 #define EEPROM_BBPTUNE_VGCLOWER FIELD16(0xff00)
0731
0732
0733
0734
0735 #define EEPROM_BBPTUNE_R17 0x0035
0736 #define EEPROM_BBPTUNE_R17_LOW FIELD16(0x00ff)
0737 #define EEPROM_BBPTUNE_R17_HIGH FIELD16(0xff00)
0738
0739
0740
0741
0742 #define EEPROM_CALIBRATE_OFFSET 0x0036
0743 #define EEPROM_CALIBRATE_OFFSET_RSSI FIELD16(0x00ff)
0744
0745
0746
0747
0748 #define TXD_DESC_SIZE ( 5 * sizeof(__le32) )
0749 #define RXD_DESC_SIZE ( 4 * sizeof(__le32) )
0750
0751
0752
0753
0754
0755
0756
0757
0758 #define TXD_W0_PACKET_ID FIELD32(0x0000000f)
0759 #define TXD_W0_RETRY_LIMIT FIELD32(0x000000f0)
0760 #define TXD_W0_MORE_FRAG FIELD32(0x00000100)
0761 #define TXD_W0_ACK FIELD32(0x00000200)
0762 #define TXD_W0_TIMESTAMP FIELD32(0x00000400)
0763 #define TXD_W0_OFDM FIELD32(0x00000800)
0764 #define TXD_W0_NEW_SEQ FIELD32(0x00001000)
0765 #define TXD_W0_IFS FIELD32(0x00006000)
0766 #define TXD_W0_DATABYTE_COUNT FIELD32(0x0fff0000)
0767 #define TXD_W0_CIPHER FIELD32(0x20000000)
0768 #define TXD_W0_KEY_ID FIELD32(0xc0000000)
0769
0770
0771
0772
0773 #define TXD_W1_IV_OFFSET FIELD32(0x0000003f)
0774 #define TXD_W1_AIFS FIELD32(0x000000c0)
0775 #define TXD_W1_CWMIN FIELD32(0x00000f00)
0776 #define TXD_W1_CWMAX FIELD32(0x0000f000)
0777
0778
0779
0780
0781 #define TXD_W2_PLCP_SIGNAL FIELD32(0x000000ff)
0782 #define TXD_W2_PLCP_SERVICE FIELD32(0x0000ff00)
0783 #define TXD_W2_PLCP_LENGTH_LOW FIELD32(0x00ff0000)
0784 #define TXD_W2_PLCP_LENGTH_HIGH FIELD32(0xff000000)
0785
0786
0787
0788
0789 #define TXD_W3_IV FIELD32(0xffffffff)
0790
0791
0792
0793
0794 #define TXD_W4_EIV FIELD32(0xffffffff)
0795
0796
0797
0798
0799
0800
0801
0802
0803 #define RXD_W0_UNICAST_TO_ME FIELD32(0x00000002)
0804 #define RXD_W0_MULTICAST FIELD32(0x00000004)
0805 #define RXD_W0_BROADCAST FIELD32(0x00000008)
0806 #define RXD_W0_MY_BSS FIELD32(0x00000010)
0807 #define RXD_W0_CRC_ERROR FIELD32(0x00000020)
0808 #define RXD_W0_OFDM FIELD32(0x00000040)
0809 #define RXD_W0_PHYSICAL_ERROR FIELD32(0x00000080)
0810 #define RXD_W0_CIPHER FIELD32(0x00000100)
0811 #define RXD_W0_CIPHER_ERROR FIELD32(0x00000200)
0812 #define RXD_W0_DATABYTE_COUNT FIELD32(0x0fff0000)
0813
0814
0815
0816
0817 #define RXD_W1_RSSI FIELD32(0x000000ff)
0818 #define RXD_W1_SIGNAL FIELD32(0x0000ff00)
0819
0820
0821
0822
0823 #define RXD_W2_IV FIELD32(0xffffffff)
0824
0825
0826
0827
0828 #define RXD_W3_EIV FIELD32(0xffffffff)
0829
0830
0831
0832
0833
0834 #define MIN_TXPOWER 0
0835 #define MAX_TXPOWER 31
0836 #define DEFAULT_TXPOWER 24
0837
0838 #define TXPOWER_FROM_DEV(__txpower) \
0839 (((u8)(__txpower)) > MAX_TXPOWER) ? DEFAULT_TXPOWER : (__txpower)
0840
0841 #define TXPOWER_TO_DEV(__txpower) \
0842 clamp_t(char, __txpower, MIN_TXPOWER, MAX_TXPOWER)
0843
0844 #endif