From 2bff4cd4fb32d3264848bbd08b140782e2816a54 Mon Sep 17 00:00:00 2001 From: Alexander Egorenkov Date: Sun, 21 Mar 2010 15:02:14 +0100 Subject: [PATCH] Fixed problems with 5GHz channels --- rt2870_rf.c | 31 ++++++++++++++----------------- 1 file changed, 14 insertions(+), 17 deletions(-) diff --git a/rt2870_rf.c b/rt2870_rf.c index 3f1c58a..6a401ad 100644 --- a/rt2870_rf.c +++ b/rt2870_rf.c @@ -187,28 +187,25 @@ void rt2870_rf_select_chan_group(struct rt2870_softc *sc, rt2870_io_bbp_write(sc, 66, tmp); - tmp = RT2870_REG_RFTR_ENABLE | RT2870_REG_TRSW_ENABLE; + tmp = RT2870_REG_RFTR_ENABLE | + RT2870_REG_TRSW_ENABLE | + RT2870_REG_LNA_PE_G1_ENABLE | + RT2870_REG_LNA_PE_A1_ENABLE | + RT2870_REG_LNA_PE_G0_ENABLE | + RT2870_REG_LNA_PE_A0_ENABLE; if (group == 0) - { - tmp |= RT2870_REG_PA_PE_G0_ENABLE | RT2870_REG_LNA_PE_G0_ENABLE; - - if (sc->ntxpath > 1) - tmp |= RT2870_REG_PA_PE_G1_ENABLE; - - if (sc->nrxpath > 1) - tmp |= RT2870_REG_LNA_PE_G1_ENABLE; - } + tmp |= RT2870_REG_PA_PE_G1_ENABLE | + RT2870_REG_PA_PE_G0_ENABLE; else - { - tmp |= RT2870_REG_PA_PE_A0_ENABLE | RT2870_REG_LNA_PE_A0_ENABLE; + tmp |= RT2870_REG_PA_PE_A1_ENABLE | + RT2870_REG_PA_PE_A0_ENABLE; - if (sc->ntxpath > 1) - tmp |= RT2870_REG_PA_PE_A1_ENABLE; + if (sc->ntxpath == 1) + tmp &= ~(RT2870_REG_PA_PE_G1_ENABLE | RT2870_REG_PA_PE_A1_ENABLE); - if (sc->nrxpath > 1) - tmp |= RT2870_REG_LNA_PE_A1_ENABLE; - } + if (sc->nrxpath == 1) + tmp &= ~(RT2870_REG_LNA_PE_G1_ENABLE | RT2870_REG_LNA_PE_A1_ENABLE); rt2870_io_mac_write(sc, RT2870_REG_TX_PIN_CFG, tmp); -- 2.11.4.GIT