aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDanny van Dyk <kugelfang@gentoo.org>2006-01-31 18:43:05 -0500
committerJohn W. Linville <linville@tuxdriver.com>2006-03-27 11:18:29 -0500
commit67093a65c08dc45374f642b1ec1b86e7095a4dc8 (patch)
tree3fabaacb98b2bf16f177845e6d632528679a805f
parent8fa252d099d864f8848a9890f26d1a51a9c7ad32 (diff)
[PATCH] Sync bcm43xx_phy_initb6() with specs
Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--drivers/net/wireless/bcm43xx/bcm43xx_phy.c15
-rw-r--r--drivers/net/wireless/bcm43xx/bcm43xx_radio.c2
-rw-r--r--drivers/net/wireless/bcm43xx/bcm43xx_radio.h1
3 files changed, 12 insertions, 6 deletions
diff --git a/drivers/net/wireless/bcm43xx/bcm43xx_phy.c b/drivers/net/wireless/bcm43xx/bcm43xx_phy.c
index f5e7a6ab93cb..d90f207b2473 100644
--- a/drivers/net/wireless/bcm43xx/bcm43xx_phy.c
+++ b/drivers/net/wireless/bcm43xx/bcm43xx_phy.c
@@ -947,7 +947,7 @@ static void bcm43xx_phy_initb6(struct bcm43xx_private *bcm)
947 bcm43xx_radio_write16(bcm, 0x0050, 0x0020); 947 bcm43xx_radio_write16(bcm, 0x0050, 0x0020);
948 if ((bcm->current_core->radio->manufact == 0x17F) && 948 if ((bcm->current_core->radio->manufact == 0x17F) &&
949 (bcm->current_core->radio->version == 0x2050) && 949 (bcm->current_core->radio->version == 0x2050) &&
950 (bcm->current_core->radio->revision == 2)) { 950 (bcm->current_core->radio->revision <= 2)) {
951 bcm43xx_radio_write16(bcm, 0x0050, 0x0020); 951 bcm43xx_radio_write16(bcm, 0x0050, 0x0020);
952 bcm43xx_radio_write16(bcm, 0x005A, 0x0070); 952 bcm43xx_radio_write16(bcm, 0x005A, 0x0070);
953 bcm43xx_radio_write16(bcm, 0x005B, 0x007B); 953 bcm43xx_radio_write16(bcm, 0x005B, 0x007B);
@@ -984,10 +984,15 @@ static void bcm43xx_phy_initb6(struct bcm43xx_private *bcm)
984 bcm43xx_write16(bcm, 0x03E4, 0x0009); 984 bcm43xx_write16(bcm, 0x03E4, 0x0009);
985 if (phy->type == BCM43xx_PHYTYPE_B) { 985 if (phy->type == BCM43xx_PHYTYPE_B) {
986 bcm43xx_write16(bcm, 0x03E6, 0x8140); 986 bcm43xx_write16(bcm, 0x03E6, 0x8140);
987 bcm43xx_phy_write(bcm, 0x0016, 0x5410); 987 bcm43xx_phy_write(bcm, 0x0016, 0x0410);
988 bcm43xx_phy_write(bcm, 0x0017, 0xA820); 988 bcm43xx_phy_write(bcm, 0x0017, 0x0820);
989 bcm43xx_phy_write(bcm, 0x0007, 0x0062); 989 bcm43xx_phy_write(bcm, 0x0062, 0x0007);
990 TODO();//TODO: calibrate stuff. 990 (void) bcm43xx_radio_calibrationvalue(bcm);
991 bcm43xx_phy_lo_b_measure(bcm);
992 if (bcm->sprom.boardflags & BCM43xx_BFL_RSSI) {
993 bcm43xx_calc_nrssi_slope(bcm);
994 bcm43xx_calc_nrssi_threshold(bcm);
995 }
991 bcm43xx_phy_init_pctl(bcm); 996 bcm43xx_phy_init_pctl(bcm);
992 } else 997 } else
993 bcm43xx_write16(bcm, 0x03E6, 0x0); 998 bcm43xx_write16(bcm, 0x03E6, 0x0);
diff --git a/drivers/net/wireless/bcm43xx/bcm43xx_radio.c b/drivers/net/wireless/bcm43xx/bcm43xx_radio.c
index 5ce6acef2c4a..3901aa994666 100644
--- a/drivers/net/wireless/bcm43xx/bcm43xx_radio.c
+++ b/drivers/net/wireless/bcm43xx/bcm43xx_radio.c
@@ -1184,7 +1184,7 @@ int bcm43xx_radio_set_interference_mitigation(struct bcm43xx_private *bcm,
1184 return 0; 1184 return 0;
1185} 1185}
1186 1186
1187static u16 bcm43xx_radio_calibrationvalue(struct bcm43xx_private *bcm) 1187u16 bcm43xx_radio_calibrationvalue(struct bcm43xx_private *bcm)
1188{ 1188{
1189 u16 reg, index, ret; 1189 u16 reg, index, ret;
1190 1190
diff --git a/drivers/net/wireless/bcm43xx/bcm43xx_radio.h b/drivers/net/wireless/bcm43xx/bcm43xx_radio.h
index 89fe29282140..a5d2e10d5d98 100644
--- a/drivers/net/wireless/bcm43xx/bcm43xx_radio.h
+++ b/drivers/net/wireless/bcm43xx/bcm43xx_radio.h
@@ -89,5 +89,6 @@ void bcm43xx_nrssi_hw_update(struct bcm43xx_private *bcm, u16 val);
89void bcm43xx_nrssi_mem_update(struct bcm43xx_private *bcm); 89void bcm43xx_nrssi_mem_update(struct bcm43xx_private *bcm);
90 90
91void bcm43xx_radio_set_tx_iq(struct bcm43xx_private *bcm); 91void bcm43xx_radio_set_tx_iq(struct bcm43xx_private *bcm);
92u16 bcm43xx_radio_calibrationvalue(struct bcm43xx_private *bcm);
92 93
93#endif /* BCM43xx_RADIO_H_ */ 94#endif /* BCM43xx_RADIO_H_ */