From: damien Date: Thu, 15 Jul 2010 19:29:00 +0000 (+0000) Subject: On AR9285, the antCtrlCommon ROM field may have the upper 16 bits set. X-Git-Url: http://artulab.com/gitweb/?a=commitdiff_plain;h=80a670fbfcc2c3b5b3d99181e16a65eff4769ba1;p=openbsd On AR9285, the antCtrlCommon ROM field may have the upper 16 bits set. Remove an incorrect mask to fix antenna diversity on some chips. --- diff --git a/sys/dev/ic/ar5416.c b/sys/dev/ic/ar5416.c index bbe505d0461..eb701905250 100644 --- a/sys/dev/ic/ar5416.c +++ b/sys/dev/ic/ar5416.c @@ -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 @@ -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) && diff --git a/sys/dev/ic/ar9280.c b/sys/dev/ic/ar9280.c index 37799cf0a67..643ef02fe49 100644 --- a/sys/dev/ic/ar9280.c +++ b/sys/dev/ic/ar9280.c @@ -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 @@ -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) diff --git a/sys/dev/ic/ar9285.c b/sys/dev/ic/ar9285.c index d7a4c68e884..07f28f001eb 100644 --- a/sys/dev/ic/ar9285.c +++ b/sys/dev/ic/ar9285.c @@ -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 @@ -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); diff --git a/sys/dev/ic/ar9287.c b/sys/dev/ic/ar9287.c index 39adfe34cbb..514dd1f3bd3 100644 --- a/sys/dev/ic/ar9287.c +++ b/sys/dev/ic/ar9287.c @@ -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 @@ -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;