Signed-off-by: Rafał Miłecki <[email protected]
---
drivers/net/wireless/b43/phy_n.c | 16 ++++++++++------
drivers/net/wireless/b43/phy_n.h | 15 +++++++++++++++
2 files changed, 25 insertions(+), 6 deletions(-)
diff --git a/drivers/net/wireless/b43/phy_n.c b/drivers/net/wireless/b43/phy_n.c
index 577c626..962a675 100644
--- a/drivers/net/wireless/b43/phy_n.c
+++ b/drivers/net/wireless/b43/phy_n.c
@@ -1220,9 +1220,11 @@ int b43_phy_initn(struct b43_wldev *dev)
if ((nphy->ipa2g_on && tmp2 == IEEE80211_BAND_2GHZ) ||
(nphy->ipa5g_on && tmp2 == IEEE80211_BAND_5GHZ)) {
b43_phy_set(dev, B43_NPHY_PAPD_EN0, 0x1);
- //FIXME b43_phy_maskset(dev, B43_NPHY_EPS_TABLE_ADJ0, 0x007F,
nphy->papd_epsilon_offset[0] << 7);
+ b43_phy_maskset(dev, B43_NPHY_EPS_TABLE_ADJ0, 0x007F,
+ nphy->papd_epsilon_offset[0] << 7);
b43_phy_set(dev, B43_NPHY_PAPD_EN1, 0x1);
- //FIXME b43_phy_maskset(dev, B43_NPHY_EPS_TABLE_ADJ1, 0x007F,
nphy->papd_epsilon_offset[1] << 7);
+ b43_phy_maskset(dev, B43_NPHY_EPS_TABLE_ADJ1, 0x007F,
+ nphy->papd_epsilon_offset[1] << 7);
//TODO N PHY IPA Set TX Dig Filters
} else if (phy->rev >= 5) {
//TODO N PHY Ext PA Set TX Dig Filters
@@ -1260,9 +1262,9 @@ int b43_phy_initn(struct b43_wldev *dev)
}
if (nphy->phyrxchain != 3)
- //TODO N PHY RX Core Set State with phyrxchain as argument
+ ;//TODO N PHY RX Core Set State with phyrxchain as argument
if (nphy->mphase_cal_phase_id > 0)
- //TODO PHY Periodic Calibration Multi-Phase Restart
+ ;//TODO PHY Periodic Calibration Multi-Phase Restart
do_rssi_cal = false;
if (phy->rev >= 3) {
@@ -1297,8 +1299,10 @@ int b43_phy_initn(struct b43_wldev *dev)
if (nphy->perical != 2) {
b43_nphy_rssi_cal(dev);
if (phy->rev >= 3) {
- //FIXME: nphy->cal_orig_pwr_idx[0] =
nphy->txpwrindex[0].index_internal;
- //FIXME: nphy->cal_orig_pwr_idx[1] =
nphy->txpwrindex[1].index_internal;
+ nphy->cal_orig_pwr_idx[0] =
+ nphy->txpwrindex[0].index_internal;
+ nphy->cal_orig_pwr_idx[1] =
+ nphy->txpwrindex[1].index_internal;
//TODO N PHY Pre Calibrate TX Gain
target = b43_nphy_get_tx_gains(dev);
}
diff --git a/drivers/net/wireless/b43/phy_n.h b/drivers/net/wireless/b43/phy_n.h
index b23987c..491ff88 100644
--- a/drivers/net/wireless/b43/phy_n.h
+++ b/drivers/net/wireless/b43/phy_n.h
@@ -949,14 +949,29 @@ struct b43_phy_n_cal_cache {
struct b43_phy_n_iq_comp rxcal_coeffs_5G;
};
+struct b43_phy_n_txpwrindex {
+ s8 index;
+ s8 index_internal;
+ s8 index_internal_save;
+ u16 AfectrlOverride;
+ u16 AfeCtrlDacGain;
+ u16 rad_gain;
+ u8 bbmult;
+ u16 iqcomp_a;
+ u16 iqcomp_b;
+ u16 locomp;
+};
+
struct b43_phy_n {
u8 txpwrctrl;
u8 cal_orig_pwr_idx[2];
+ struct b43_phy_n_txpwrindex txpwrindex[2];
u8 measure_hold;
u8 phyrxchain;
u8 perical;
u8 mphase_cal_phase_id;
u8 antsel_type;
+ u16 papd_epsilon_offset[2];
u32 deaf_count;
bool hang_avoid;
bool mute;
--
1.6.4.2
_______________________________________________
Bcm43xx-dev mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev