From 05155c83d13b983ac2c5691575fd471543df31fe Mon Sep 17 00:00:00 2001
From: Michael Buesch <mb@bu3sch.de>
Date: Wed, 19 Sep 2007 19:10:08 +0200
Subject: [B43]: Change loglevel of radio-enable message.

Also cleanup the code a bit and remove the inline.

Signed-off-by: Michael Buesch <mb@bu3sch.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
---
 drivers/net/wireless/b43/leds.c | 15 +++++++--------
 drivers/net/wireless/b43/main.c | 23 +++++++++++++++++++----
 drivers/net/wireless/b43/main.h | 17 -----------------
 3 files changed, 26 insertions(+), 29 deletions(-)

(limited to 'drivers')

diff --git a/drivers/net/wireless/b43/leds.c b/drivers/net/wireless/b43/leds.c
index 85d965de579..0f155b4f34e 100644
--- a/drivers/net/wireless/b43/leds.c
+++ b/drivers/net/wireless/b43/leds.c
@@ -176,6 +176,7 @@ void b43_leds_update(struct b43_wldev *dev, int activity)
 	unsigned long interval = 0;
 	u16 ledctl;
 	unsigned long flags;
+	bool radio_enabled = (phy->radio_on && dev->radio_hw_enable);
 
 	spin_lock_irqsave(&dev->wl->leds_lock, flags);
 	ledctl = b43_read16(dev, B43_MMIO_GPIO_CONTROL);
@@ -195,21 +196,19 @@ void b43_leds_update(struct b43_wldev *dev, int activity)
 			turn_on = activity;
 			break;
 		case B43_LED_RADIO_ALL:
-			turn_on = phy->radio_on && b43_is_hw_radio_enabled(dev);
+			turn_on = radio_enabled;
 			break;
 		case B43_LED_RADIO_A:
-			turn_on = (phy->radio_on && b43_is_hw_radio_enabled(dev)
-				   && phy->type == B43_PHYTYPE_A);
+			turn_on = (radio_enabled && phy->type == B43_PHYTYPE_A);
 			break;
 		case B43_LED_RADIO_B:
-			turn_on = (phy->radio_on && b43_is_hw_radio_enabled(dev)
-				   && (phy->type == B43_PHYTYPE_B
-				       || phy->type == B43_PHYTYPE_G));
+			turn_on = (radio_enabled &&
+				   (phy->type == B43_PHYTYPE_B
+				    || phy->type == B43_PHYTYPE_G));
 			break;
 		case B43_LED_MODE_BG:
 			if (phy->type == B43_PHYTYPE_G
-			    && b43_is_hw_radio_enabled(dev)
-			    && 1 /*FIXME: using G rates. */ )
+			    && radio_enabled)
 				turn_on = 1;
 			break;
 		case B43_LED_TRANSFER:
diff --git a/drivers/net/wireless/b43/main.c b/drivers/net/wireless/b43/main.c
index 66c89df51fb..1390f41425f 100644
--- a/drivers/net/wireless/b43/main.c
+++ b/drivers/net/wireless/b43/main.c
@@ -2175,6 +2175,21 @@ static void b43_mgmtframe_txantenna(struct b43_wldev *dev, int antenna)
 	b43_shm_write16(dev, B43_SHM_SHARED, B43_SHM_SH_PRPHYCTL, tmp);
 }
 
+/* Returns TRUE, if the radio is enabled in hardware. */
+static bool b43_is_hw_radio_enabled(struct b43_wldev *dev)
+{
+	if (dev->phy.rev >= 3) {
+		if (!(b43_read32(dev, B43_MMIO_RADIO_HWENABLED_HI)
+		      & B43_MMIO_RADIO_HWENABLED_HI_MASK))
+			return 1;
+	} else {
+		if (b43_read16(dev, B43_MMIO_RADIO_HWENABLED_LO)
+		    & B43_MMIO_RADIO_HWENABLED_LO_MASK)
+			return 1;
+	}
+	return 0;
+}
+
 /* This is the opposite of b43_chip_init() */
 static void b43_chip_exit(struct b43_wldev *dev)
 {
@@ -2214,7 +2229,7 @@ static int b43_chip_init(struct b43_wldev *dev)
 	b43_radio_turn_on(dev);
 	dev->radio_hw_enable = b43_is_hw_radio_enabled(dev);
 	b43dbg(dev->wl, "Radio %s by hardware\n",
-	       (dev->radio_hw_enable == 0) ? "disabled" : "enabled");
+	       dev->radio_hw_enable ? "enabled" : "disabled");
 
 	b43_write16(dev, 0x03E6, 0x0000);
 	err = b43_phy_init(dev);
@@ -2373,14 +2388,14 @@ static void b43_periodic_every15sec(struct b43_wldev *dev)
 
 static void b43_periodic_every1sec(struct b43_wldev *dev)
 {
-	int radio_hw_enable;
+	bool radio_hw_enable;
 
 	/* check if radio hardware enabled status changed */
 	radio_hw_enable = b43_is_hw_radio_enabled(dev);
 	if (unlikely(dev->radio_hw_enable != radio_hw_enable)) {
 		dev->radio_hw_enable = radio_hw_enable;
-		b43dbg(dev->wl, "Radio hardware status changed to %s\n",
-		       (radio_hw_enable == 0) ? "disabled" : "enabled");
+		b43info(dev->wl, "Radio hardware status changed to %s\n",
+			radio_hw_enable ? "ENABLED" : "DISABLED");
 		b43_leds_update(dev, 0);
 	}
 }
diff --git a/drivers/net/wireless/b43/main.h b/drivers/net/wireless/b43/main.h
index bd8fcf72dc5..284d17da17d 100644
--- a/drivers/net/wireless/b43/main.h
+++ b/drivers/net/wireless/b43/main.h
@@ -96,23 +96,6 @@ static inline int b43_is_ofdm_rate(int rate)
 	return !b43_is_cck_rate(rate);
 }
 
-static inline int b43_is_hw_radio_enabled(struct b43_wldev *dev)
-{
-	/* function to return state of hardware enable of radio
-	 * returns 0 if radio disabled, 1 if radio enabled
-	 */
-	struct b43_phy *phy = &dev->phy;
-
-	if (phy->rev >= 3)
-		return ((b43_read32(dev, B43_MMIO_RADIO_HWENABLED_HI)
-			 & B43_MMIO_RADIO_HWENABLED_HI_MASK)
-			== 0) ? 1 : 0;
-	else
-		return ((b43_read16(dev, B43_MMIO_RADIO_HWENABLED_LO)
-			 & B43_MMIO_RADIO_HWENABLED_LO_MASK)
-			== 0) ? 0 : 1;
-}
-
 void b43_tsf_read(struct b43_wldev *dev, u64 * tsf);
 void b43_tsf_write(struct b43_wldev *dev, u64 tsf);
 
-- 
cgit v1.2.3