On AR9285, the antCtrlCommon ROM field may have the upper 16 bits set.
authordamien <damien@openbsd.org>
Thu, 15 Jul 2010 19:29:00 +0000 (19:29 +0000)
committerdamien <damien@openbsd.org>
Thu, 15 Jul 2010 19:29:00 +0000 (19:29 +0000)
Remove an incorrect mask to fix antenna diversity on some chips.

sys/dev/ic/ar5416.c
sys/dev/ic/ar9280.c
sys/dev/ic/ar9285.c
sys/dev/ic/ar9287.c

index bbe505d..eb70190 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: ar5416.c,v 1.9 2010/07/15 19:07:43 damien Exp $       */
+/*     $OpenBSD: ar5416.c,v 1.10 2010/07/15 19:29:00 damien Exp $      */
 
 /*-
  * Copyright (c) 2009 Damien Bergamini <damien.bergamini@free.fr>
@@ -249,7 +249,7 @@ ar5416_init_from_rom(struct athn_softc *sc, struct ieee80211_channel *c,
 
        modal = &eep->modalHeader[IEEE80211_IS_CHAN_2GHZ(c)];
 
-       AR_WRITE(sc, AR_PHY_SWITCH_COM, modal->antCtrlCommon & 0xffff);
+       AR_WRITE(sc, AR_PHY_SWITCH_COM, modal->antCtrlCommon);
 
        for (i = 0; i < AR5416_MAX_CHAINS; i++) {
                if (AR_SREV_5416_20_OR_LATER(sc) &&
index 37799cf..643ef02 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: ar9280.c,v 1.8 2010/07/15 19:07:43 damien Exp $       */
+/*     $OpenBSD: ar9280.c,v 1.9 2010/07/15 19:29:00 damien Exp $       */
 
 /*-
  * Copyright (c) 2009 Damien Bergamini <damien.bergamini@free.fr>
@@ -240,7 +240,7 @@ ar9280_init_from_rom(struct athn_softc *sc, struct ieee80211_channel *c,
 
        modal = &eep->modalHeader[IEEE80211_IS_CHAN_2GHZ(c)];
 
-       AR_WRITE(sc, AR_PHY_SWITCH_COM, modal->antCtrlCommon & 0xffff);
+       AR_WRITE(sc, AR_PHY_SWITCH_COM, modal->antCtrlCommon);
 
        for (i = 0; i < AR9280_MAX_CHAINS; i++) {
                if (sc->rxchainmask == 0x5 || sc->txchainmask == 0x5)
index d7a4c68..07f28f0 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: ar9285.c,v 1.9 2010/07/15 19:07:43 damien Exp $       */
+/*     $OpenBSD: ar9285.c,v 1.10 2010/07/15 19:29:00 damien Exp $      */
 
 /*-
  * Copyright (c) 2009-2010 Damien Bergamini <damien.bergamini@free.fr>
@@ -182,7 +182,7 @@ ar9285_init_from_rom(struct athn_softc *sc, struct ieee80211_channel *c,
        uint8_t ob[5], db1[5], db2[5];
        uint8_t txRxAtten;
 
-       AR_WRITE(sc, AR_PHY_SWITCH_COM, modal->antCtrlCommon & 0xffff);
+       AR_WRITE(sc, AR_PHY_SWITCH_COM, modal->antCtrlCommon);
        AR_WRITE(sc, AR_PHY_SWITCH_CHAIN_0, modal->antCtrlChain);
 
        reg = AR_READ(sc, AR_PHY_TIMING_CTRL4_0);
index 39adfe3..514dd1f 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: ar9287.c,v 1.12 2010/07/15 19:07:43 damien Exp $      */
+/*     $OpenBSD: ar9287.c,v 1.13 2010/07/15 19:29:00 damien Exp $      */
 
 /*-
  * Copyright (c) 2009 Damien Bergamini <damien.bergamini@free.fr>
@@ -175,7 +175,7 @@ ar9287_init_from_rom(struct athn_softc *sc, struct ieee80211_channel *c,
        uint32_t reg, offset;
        int i;
 
-       AR_WRITE(sc, AR_PHY_SWITCH_COM, modal->antCtrlCommon & 0xffff);
+       AR_WRITE(sc, AR_PHY_SWITCH_COM, modal->antCtrlCommon);
 
        for (i = 0; i < AR9287_MAX_CHAINS; i++) {
                offset = i * 0x1000;