summaryrefslogtreecommitdiff
path: root/drivers/staging/rt2860
diff options
context:
space:
mode:
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2009-08-23 15:28:58 +0200
committerGreg Kroah-Hartman <gregkh@suse.de>2009-09-15 12:02:20 -0700
commitf59a9420adbd5443339c73988a1e5f70b3e1e798 (patch)
tree3f7a41e3e2163f215eb0c9bf432b3f826bac369a /drivers/staging/rt2860
parent331e0c169a9feb66a689ecc9e7494aea4df154b8 (diff)
Staging: rtxxxx: unify AsicSwitchChannel()
Unify RT30xx and !RT30xx code in AsicSwitchChannel(). There should be no functional changes caused by this patch. Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging/rt2860')
-rw-r--r--drivers/staging/rt2860/common/mlme.c46
1 files changed, 9 insertions, 37 deletions
diff --git a/drivers/staging/rt2860/common/mlme.c b/drivers/staging/rt2860/common/mlme.c
index 12444e386b01..3364d672d8dc 100644
--- a/drivers/staging/rt2860/common/mlme.c
+++ b/drivers/staging/rt2860/common/mlme.c
@@ -5787,8 +5787,7 @@ VOID AsicSwitchChannel(
break;
}
}
-#endif
-#ifndef RT30xx
+#else
for (index = 0; index < pAd->ChannelListNum; index++)
{
if (Channel == pAd->ChannelList[index].Channel)
@@ -5805,13 +5804,11 @@ VOID AsicSwitchChannel(
#ifdef RT2870
// The RF programming sequence is difference between 3xxx and 2xxx
+ if ((IS_RT3070(pAd) || IS_RT3090(pAd)) && (
#ifdef RT30xx
- if ((IS_RT3070(pAd) || IS_RT3090(pAd)) && ((pAd->RfIcType == RFIC_3020) || (pAd->RfIcType == RFIC_2020) ||
- (pAd->RfIcType == RFIC_3021) || (pAd->RfIcType == RFIC_3022)))
-#endif
-#ifndef RT30xx
- if (IS_RT3070(pAd) && ((pAd->RfIcType == RFIC_3020) || (pAd->RfIcType == RFIC_2020)))
+ (pAd->RfIcType == RFIC_3022) || (pAd->RfIcType == RFIC_3021) ||
#endif
+ (pAd->RfIcType == RFIC_3020) || (pAd->RfIcType == RFIC_2020)))
{
/* modify by WY for Read RF Reg. error */
UCHAR RFValue;
@@ -5824,22 +5821,6 @@ VOID AsicSwitchChannel(
RT30xxWriteRFRegister(pAd, RF_R02, FreqItems3020[index].N);
RT30xxWriteRFRegister(pAd, RF_R03, FreqItems3020[index].K);
-#ifndef RT30xx
- RT30xxReadRFRegister(pAd, RF_R06, (PUCHAR)&RFValue);
- RFValue = (RFValue & 0xFC) | FreqItems3020[index].R;
- RT30xxWriteRFRegister(pAd, RF_R06, (UCHAR)RFValue);
-
- // Set Tx Power
- RT30xxReadRFRegister(pAd, RF_R12, (PUCHAR)&RFValue);
- RFValue = (RFValue & 0xE0) | TxPwer;
- RT30xxWriteRFRegister(pAd, RF_R12, (UCHAR)RFValue);
-
- // Set RF offset
- RT30xxReadRFRegister(pAd, RF_R23, (PUCHAR)&RFValue);
- RFValue = (RFValue & 0x80) | pAd->RfFreqOffset;
- RT30xxWriteRFRegister(pAd, RF_R23, (UCHAR)RFValue);
-#endif
-#ifdef RT30xx
RT30xxReadRFRegister(pAd, RF_R06, &RFValue);
RFValue = (RFValue & 0xFC) | FreqItems3020[index].R;
RT30xxWriteRFRegister(pAd, RF_R06, RFValue);
@@ -5849,6 +5830,7 @@ VOID AsicSwitchChannel(
RFValue = (RFValue & 0xE0) | TxPwer;
RT30xxWriteRFRegister(pAd, RF_R12, RFValue);
+#ifdef RT30xx
// Set Tx1 Power
RT30xxReadRFRegister(pAd, RF_R13, &RFValue);
RFValue = (RFValue & 0xE0) | TxPwer2;
@@ -5868,12 +5850,12 @@ VOID AsicSwitchChannel(
else if (pAd->Antenna.field.RxPath == 2)
RFValue |= 0x40;
RT30xxWriteRFRegister(pAd, RF_R01, RFValue);
+#endif
// Set RF offset
RT30xxReadRFRegister(pAd, RF_R23, &RFValue);
RFValue = (RFValue & 0x80) | pAd->RfFreqOffset;
RT30xxWriteRFRegister(pAd, RF_R23, RFValue);
-#endif
// Set BW
if (!bScan && (pAd->CommonCfg.BBPCurrentBW == BW_40))
@@ -5885,21 +5867,10 @@ VOID AsicSwitchChannel(
{
RFValue = pAd->Mlme.CaliBW20RfR24;
}
-#ifndef RT30xx
- RT30xxWriteRFRegister(pAd, RF_R24, (UCHAR)RFValue);
-
- // Enable RF tuning
- RT30xxReadRFRegister(pAd, RF_R07, (PUCHAR)&RFValue);
- RFValue = RFValue | 0x1;
- RT30xxWriteRFRegister(pAd, RF_R07, (UCHAR)RFValue);
-
- // latch channel for future usage.
- pAd->LatchRfRegs.Channel = Channel;
-#endif
-#ifdef RT30xx
RT30xxWriteRFRegister(pAd, RF_R24, RFValue);
+#ifdef RT30xx
RT30xxWriteRFRegister(pAd, RF_R31, RFValue);
-
+#endif
// Enable RF tuning
RT30xxReadRFRegister(pAd, RF_R07, &RFValue);
RFValue = RFValue | 0x1;
@@ -5908,6 +5879,7 @@ VOID AsicSwitchChannel(
// latch channel for future usage.
pAd->LatchRfRegs.Channel = Channel;
+#ifdef RT30xx
DBGPRINT(RT_DEBUG_TRACE, ("SwitchChannel#%d(RF=%d, Pwr0=%d, Pwr1=%d, %dT), N=0x%02X, K=0x%02X, R=0x%02X\n",
Channel,
pAd->RfIcType,