linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] rtl8187b: do not do per packet TX AGC
@ 2010-08-28  5:54 Thadeu Lima de Souza Cascardo
  2010-08-28 21:32 ` Larry Finger
  0 siblings, 1 reply; 22+ messages in thread
From: Thadeu Lima de Souza Cascardo @ 2010-08-28  5:54 UTC (permalink / raw)
  To: linux-wireless
  Cc: Thadeu Lima de Souza Cascardo, Larry Finger, Rogerio Luz Coelho,
	Herton Ronaldo Krzesinski, Hin-Tak Leung

The code for rtl8187 does not do per packet TX AGC. Resetting the per
packet TX AGC for rtl8187b appears to increase its overall TX power.
This allows the device to associate and a connection be established
using APs a little further away.

Tested-by: Thadeu Lima de Souza Cascardo <cascardo@holoscopio.com>
Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@holoscopio.com>
Cc: linux-wireless@vger.kernel.org
Cc: Larry Finger <Larry.Finger@lwfinger.net>
Cc: Rogerio Luz Coelho <rogluz.news@gmail.com>
Cc: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Cc: Hin-Tak Leung <hintak.leung@gmail.com>
---
 drivers/net/wireless/rtl818x/rtl8187_dev.c |   10 ++++++----
 1 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/drivers/net/wireless/rtl818x/rtl8187_dev.c b/drivers/net/wireless/rtl818x/rtl8187_dev.c
index 38fa824..6e26149 100644
--- a/drivers/net/wireless/rtl818x/rtl8187_dev.c
+++ b/drivers/net/wireless/rtl818x/rtl8187_dev.c
@@ -775,10 +775,6 @@ static int rtl8187b_init_hw(struct ieee80211_hw *dev)
 	reg = rtl818x_ioread8(priv, &priv->map->CW_CONF);
 	reg |= RTL818X_CW_CONF_PERPACKET_RETRY_SHIFT;
 	rtl818x_iowrite8(priv, &priv->map->CW_CONF, reg);
-	reg = rtl818x_ioread8(priv, &priv->map->TX_AGC_CTL);
-	reg |= RTL818X_TX_AGC_CTL_PERPACKET_GAIN_SHIFT |
-	       RTL818X_TX_AGC_CTL_PERPACKET_ANTSEL_SHIFT;
-	rtl818x_iowrite8(priv, &priv->map->TX_AGC_CTL, reg);
 
 	rtl818x_iowrite16_idx(priv, (__le16 *)0xFFE0, 0x0FFF, 1);
 
@@ -929,6 +925,12 @@ static int rtl8187_start(struct ieee80211_hw *dev)
 		priv->rx_conf = reg;
 		rtl818x_iowrite32(priv, &priv->map->RX_CONF, reg);
 
+		reg = rtl818x_ioread8(priv, &priv->map->TX_AGC_CTL);
+		reg &= ~RTL818X_TX_AGC_CTL_PERPACKET_GAIN_SHIFT;
+		reg &= ~RTL818X_TX_AGC_CTL_PERPACKET_ANTSEL_SHIFT;
+		reg &= ~RTL818X_TX_AGC_CTL_FEEDBACK_ANT;
+		rtl818x_iowrite8(priv, &priv->map->TX_AGC_CTL, reg);
+
 		rtl818x_iowrite32(priv, &priv->map->TX_CONF,
 				  RTL818X_TX_CONF_HW_SEQNUM |
 				  RTL818X_TX_CONF_DISREQQSIZE |
-- 
1.7.1


^ permalink raw reply related	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2010-11-04 14:23 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-08-28  5:54 [PATCH] rtl8187b: do not do per packet TX AGC Thadeu Lima de Souza Cascardo
2010-08-28 21:32 ` Larry Finger
2010-08-30 14:12   ` John W. Linville
2010-08-30 14:48     ` Larry Finger
2010-08-30 15:28       ` Thadeu Lima de Souza Cascardo
2010-10-26 18:03         ` seno
2010-10-26 18:25           ` [PATCH] " Larry Finger
2010-10-26 18:53             ` Thadeu Lima de Souza Cascardo
2010-10-28 21:13               ` Herton Ronaldo Krzesinski
2010-10-28 22:01                 ` Thadeu Lima de Souza Cascardo
2010-10-29 13:15                   ` Herton Ronaldo Krzesinski
2010-10-28 23:21                 ` seno
2010-10-29 13:54                   ` Thadeu Lima de Souza Cascardo
2010-10-29 22:31                     ` seno
2010-10-30  0:00                       ` Larry Finger
2010-10-30  2:12                         ` seno
2010-11-01  4:39                       ` Herton Ronaldo Krzesinski
2010-11-01 16:24                         ` Larry Finger
2010-11-03  3:16                           ` Rogerio Luz Coelho
2010-11-04 14:23                           ` Hin-Tak Leung
2010-08-30 15:12   ` Thadeu Lima de Souza Cascardo
2010-09-16 18:44     ` John W. Linville

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).