forked from Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
61 lines
1.4 KiB
61 lines
1.4 KiB
/* SPDX-License-Identifier: GPL-2.0 */ |
|
#ifndef B43_RADIO_2059_H_ |
|
#define B43_RADIO_2059_H_ |
|
|
|
#include <linux/types.h> |
|
|
|
#include "phy_ht.h" |
|
|
|
#define R2059_C1 0x000 |
|
#define R2059_C2 0x400 |
|
#define R2059_C3 0x800 |
|
#define R2059_ALL 0xC00 |
|
|
|
#define R2059_RCAL_CONFIG 0x004 |
|
#define R2059_RFPLL_MASTER 0x011 |
|
#define R2059_RFPLL_MISC_EN 0x02b |
|
#define R2059_RFPLL_MISC_CAL_RESETN 0x02e |
|
#define R2059_XTAL_CONFIG2 0x0c0 |
|
#define R2059_RCCAL_START_R1_Q1_P1 0x13c |
|
#define R2059_RCCAL_X1 0x13d |
|
#define R2059_RCCAL_TRC0 0x13e |
|
#define R2059_RCCAL_DONE_OSCCAP 0x140 |
|
#define R2059_RCAL_STATUS 0x145 |
|
#define R2059_RCCAL_MASTER 0x17f |
|
|
|
/* Values for various registers uploaded on channel switching */ |
|
struct b43_phy_ht_channeltab_e_radio2059 { |
|
/* The channel frequency in MHz */ |
|
u16 freq; |
|
/* Values for radio registers */ |
|
u8 radio_syn16; |
|
u8 radio_syn17; |
|
u8 radio_syn22; |
|
u8 radio_syn25; |
|
u8 radio_syn27; |
|
u8 radio_syn28; |
|
u8 radio_syn29; |
|
u8 radio_syn2c; |
|
u8 radio_syn2d; |
|
u8 radio_syn37; |
|
u8 radio_syn41; |
|
u8 radio_syn43; |
|
u8 radio_syn47; |
|
u8 radio_rxtx4a; |
|
u8 radio_rxtx58; |
|
u8 radio_rxtx5a; |
|
u8 radio_rxtx6a; |
|
u8 radio_rxtx6d; |
|
u8 radio_rxtx6e; |
|
u8 radio_rxtx92; |
|
u8 radio_rxtx98; |
|
/* Values for PHY registers */ |
|
struct b43_phy_ht_channeltab_e_phy phy_regs; |
|
}; |
|
|
|
void r2059_upload_inittabs(struct b43_wldev *dev); |
|
|
|
const struct b43_phy_ht_channeltab_e_radio2059 |
|
*b43_phy_ht_get_channeltab_e_r2059(struct b43_wldev *dev, u16 freq); |
|
|
|
#endif /* B43_RADIO_2059_H_ */
|
|
|