Search Linux Wireless

[RFT V2] rtl8187: Fix OFDM power settings for RTL8187L

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hauke,

Please apply this patch on top of current wireless-testing, or
compat-wireless.

V1 only did one of the two kinds of radios.

Larry
====================


After reports of poor performance, a review of the latest vendor
driver (rtl8187_linux_26.1025.0328.2007) for RTL8187L devices was
undertaken.

A difference was found in the code used to index the OFDM power
tables. When the Linux driver was changed, my unit works at a much
greater range than before.

Signed-off-by: Larry Finger <Larry.Finger@xxxxxxxxxxxx>
---



Index: wireless-testing/drivers/net/wireless/rtl818x/rtl8187_rtl8225.c
===================================================================
--- wireless-testing.orig/drivers/net/wireless/rtl818x/rtl8187_rtl8225.c
+++ wireless-testing/drivers/net/wireless/rtl818x/rtl8187_rtl8225.c
@@ -285,6 +285,10 @@ static void rtl8225_rf_set_tx_power(stru
 	ofdm_power = priv->channels[channel - 1].hw_value >> 4;

 	cck_power = min(cck_power, (u8)11);
+	if (ofdm_power > (u8)15)
+		ofdm_power = 25;
+	else
+		ofdm_power += 10;
 	ofdm_power = min(ofdm_power, (u8)35);

 	rtl818x_iowrite8(priv, &priv->map->TX_GAIN_CCK,
@@ -536,7 +540,10 @@ static void rtl8225z2_rf_set_tx_power(st
 	cck_power += priv->txpwr_base & 0xF;
 	cck_power = min(cck_power, (u8)35);

-	ofdm_power = min(ofdm_power, (u8)15);
+	if (ofdm_power > (u8)15)
+		ofdm_power = 25;
+	else
+		ofdm_power += 10;
 	ofdm_power += priv->txpwr_base >> 4;
 	ofdm_power = min(ofdm_power, (u8)35);


--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux