diff options
author | Gábor Stefanik <netrolller.3d@gmail.com> | 2009-08-18 16:08:31 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2009-08-20 11:36:06 -0400 |
commit | 5791ce18aa660df7d1dafebf6bd89d5aa05bd742 (patch) | |
tree | cbf4a555be3776dfaa52ffd3d6884253ac2ea1ac /drivers/net/wireless | |
parent | d904dc17495581254442b7fd054e267f2605c8ec (diff) |
b43: LP-PHY: Two small spec updates
The specs are beginning to support rev3 LP-PHYs - implement one of
the changes needed for rev3 support.
Also, in the new MIPS driver, the "Japan TX filter" was renamed to
"analog TX filter init" - however, calling it "init" is confusing,
so name it "set analog filter", with a comment for easier future
identification.
Signed-off-by: Gábor Stefanik <netrolller.3d@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless')
-rw-r--r-- | drivers/net/wireless/b43/phy_lp.c | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/drivers/net/wireless/b43/phy_lp.c b/drivers/net/wireless/b43/phy_lp.c index 940238385680..37ba1777667f 100644 --- a/drivers/net/wireless/b43/phy_lp.c +++ b/drivers/net/wireless/b43/phy_lp.c | |||
@@ -609,9 +609,14 @@ static void lpphy_2063_init(struct b43_wldev *dev) | |||
609 | b43_radio_write(dev, B2063_PA_SP7, 0); | 609 | b43_radio_write(dev, B2063_PA_SP7, 0); |
610 | b43_radio_write(dev, B2063_TX_RF_SP6, 0x20); | 610 | b43_radio_write(dev, B2063_TX_RF_SP6, 0x20); |
611 | b43_radio_write(dev, B2063_TX_RF_SP9, 0x40); | 611 | b43_radio_write(dev, B2063_TX_RF_SP9, 0x40); |
612 | b43_radio_write(dev, B2063_PA_SP3, 0xa0); | 612 | if (dev->phy.rev == 2) { |
613 | b43_radio_write(dev, B2063_PA_SP4, 0xa0); | 613 | b43_radio_write(dev, B2063_PA_SP3, 0xa0); |
614 | b43_radio_write(dev, B2063_PA_SP2, 0x18); | 614 | b43_radio_write(dev, B2063_PA_SP4, 0xa0); |
615 | b43_radio_write(dev, B2063_PA_SP2, 0x18); | ||
616 | } else { | ||
617 | b43_radio_write(dev, B2063_PA_SP3, 0x20); | ||
618 | b43_radio_write(dev, B2063_PA_SP2, 0x20); | ||
619 | } | ||
615 | } | 620 | } |
616 | 621 | ||
617 | struct lpphy_stx_table_entry { | 622 | struct lpphy_stx_table_entry { |
@@ -1972,7 +1977,9 @@ static int lpphy_b2062_tune(struct b43_wldev *dev, | |||
1972 | return err; | 1977 | return err; |
1973 | } | 1978 | } |
1974 | 1979 | ||
1975 | static void lpphy_japan_filter(struct b43_wldev *dev, int channel) | 1980 | |
1981 | /* This was previously called lpphy_japan_filter */ | ||
1982 | static void lpphy_set_analog_filter(struct b43_wldev *dev, int channel) | ||
1976 | { | 1983 | { |
1977 | struct b43_phy_lp *lpphy = dev->phy.lp; | 1984 | struct b43_phy_lp *lpphy = dev->phy.lp; |
1978 | u16 tmp = (channel == 14); //SPEC FIXME check japanwidefilter! | 1985 | u16 tmp = (channel == 14); //SPEC FIXME check japanwidefilter! |
@@ -2141,7 +2148,7 @@ static int b43_lpphy_op_switch_channel(struct b43_wldev *dev, | |||
2141 | err = lpphy_b2062_tune(dev, new_channel); | 2148 | err = lpphy_b2062_tune(dev, new_channel); |
2142 | if (err) | 2149 | if (err) |
2143 | return err; | 2150 | return err; |
2144 | lpphy_japan_filter(dev, new_channel); | 2151 | lpphy_set_analog_filter(dev, new_channel); |
2145 | lpphy_adjust_gain_table(dev, channel2freq_lp(new_channel)); | 2152 | lpphy_adjust_gain_table(dev, channel2freq_lp(new_channel)); |
2146 | } | 2153 | } |
2147 | 2154 | ||