Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 */
0002 #ifndef B43_RADIO_2059_H_
0003 #define B43_RADIO_2059_H_
0004 
0005 #include <linux/types.h>
0006 
0007 #include "phy_ht.h"
0008 
0009 #define R2059_C1            0x000
0010 #define R2059_C2            0x400
0011 #define R2059_C3            0x800
0012 #define R2059_ALL           0xC00
0013 
0014 #define R2059_RCAL_CONFIG           0x004
0015 #define R2059_RFPLL_MASTER          0x011
0016 #define R2059_RFPLL_MISC_EN         0x02b
0017 #define R2059_RFPLL_MISC_CAL_RESETN     0x02e
0018 #define R2059_XTAL_CONFIG2          0x0c0
0019 #define R2059_RCCAL_START_R1_Q1_P1      0x13c
0020 #define R2059_RCCAL_X1              0x13d
0021 #define R2059_RCCAL_TRC0            0x13e
0022 #define R2059_RCCAL_DONE_OSCCAP         0x140
0023 #define R2059_RCAL_STATUS           0x145
0024 #define R2059_RCCAL_MASTER          0x17f
0025 
0026 /* Values for various registers uploaded on channel switching */
0027 struct b43_phy_ht_channeltab_e_radio2059 {
0028     /* The channel frequency in MHz */
0029     u16 freq;
0030     /* Values for radio registers */
0031     u8 radio_syn16;
0032     u8 radio_syn17;
0033     u8 radio_syn22;
0034     u8 radio_syn25;
0035     u8 radio_syn27;
0036     u8 radio_syn28;
0037     u8 radio_syn29;
0038     u8 radio_syn2c;
0039     u8 radio_syn2d;
0040     u8 radio_syn37;
0041     u8 radio_syn41;
0042     u8 radio_syn43;
0043     u8 radio_syn47;
0044     u8 radio_rxtx4a;
0045     u8 radio_rxtx58;
0046     u8 radio_rxtx5a;
0047     u8 radio_rxtx6a;
0048     u8 radio_rxtx6d;
0049     u8 radio_rxtx6e;
0050     u8 radio_rxtx92;
0051     u8 radio_rxtx98;
0052     /* Values for PHY registers */
0053     struct b43_phy_ht_channeltab_e_phy phy_regs;
0054 };
0055 
0056 void r2059_upload_inittabs(struct b43_wldev *dev);
0057 
0058 const struct b43_phy_ht_channeltab_e_radio2059
0059 *b43_phy_ht_get_channeltab_e_r2059(struct b43_wldev *dev, u16 freq);
0060 
0061 #endif /* B43_RADIO_2059_H_ */