summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless
diff options
context:
space:
mode:
authorRafał Miłecki <zajec5@gmail.com>2011-05-17 19:19:39 +0200
committerJohn W. Linville <linville@tuxdriver.com>2011-05-19 19:54:09 +0200
commit755173291a86c6e77414e1eaf22279fde88ccd86 (patch)
tree62794c937e903d32448df806107efdfe94d5eb6d /drivers/net/wireless
parentb43: separate ssb core reset (diff)
downloadlinux-755173291a86c6e77414e1eaf22279fde88ccd86.tar.xz
linux-755173291a86c6e77414e1eaf22279fde88ccd86.zip
b43: read PHY info only when needed (for PHY-A)
We risk reading TMSHIGH register twice, but PHY-A are really rare and we do not support them at the moment. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless')
-rw-r--r--drivers/net/wireless/b43/main.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/wireless/b43/main.c b/drivers/net/wireless/b43/main.c
index 1bc40eb3e49a..fff14adb273f 100644
--- a/drivers/net/wireless/b43/main.c
+++ b/drivers/net/wireless/b43/main.c
@@ -2118,7 +2118,6 @@ static int b43_try_request_fw(struct b43_request_fw_context *ctx)
int err;
/* Get microcode */
- tmshigh = ssb_read32(dev->sdev, SSB_TMSHIGH);
if ((rev >= 5) && (rev <= 10))
filename = "ucode5";
else if ((rev >= 11) && (rev <= 12))
@@ -2157,6 +2156,7 @@ static int b43_try_request_fw(struct b43_request_fw_context *ctx)
switch (dev->phy.type) {
case B43_PHYTYPE_A:
if ((rev >= 5) && (rev <= 10)) {
+ tmshigh = ssb_read32(dev->sdev, SSB_TMSHIGH);
if (tmshigh & B43_TMSHIGH_HAVE_2GHZ_PHY)
filename = "a0g1initvals5";
else
@@ -2201,6 +2201,7 @@ static int b43_try_request_fw(struct b43_request_fw_context *ctx)
switch (dev->phy.type) {
case B43_PHYTYPE_A:
if ((rev >= 5) && (rev <= 10)) {
+ tmshigh = ssb_read32(dev->sdev, SSB_TMSHIGH);
if (tmshigh & B43_TMSHIGH_HAVE_2GHZ_PHY)
filename = "a0g1bsinitvals5";
else