From mboxrd@z Thu Jan 1 00:00:00 1970 From: Robert Meschke Date: Mon, 13 Sep 2010 18:30:57 +0200 Subject: [ath9k-devel] Antenna Configuration References: 4C8E49AF.7050507@yahoo.de Message-ID: <4C8E51C1.4010803@yahoo.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: ath9k-devel@lists.ath9k.org Hi Adrian, look at the main.c of ath9k. /* * Update tx/rx chainmask. For legacy association, * hard code chainmask to 1x1, for 11n association, use * the chainmask configuration, for bt coexistence, use * the chainmask configuration even in legacy mode. */ void ath_update_chainmask(struct ath_softc *sc, int is_ht) { struct ath_hw *ah = sc->sc_ah; struct ath_common *common = ath9k_hw_common(ah); if ((sc->sc_flags & SC_OP_SCANNING) || is_ht || (ah->btcoex_hw.scheme != ATH_BTCOEX_CFG_NONE)) { common->tx_chainmask = ah->caps.tx_chainmask; common->rx_chainmask = ah->caps.rx_chainmask; } else { common->tx_chainmask = 1; common->rx_chainmask = 1; } ath_print(common, ATH_DBG_CONFIG, "tx chmask: %d, rx chmask: %d\n", common->tx_chainmask, common->rx_chainmask); } This function is called on every channel change. If there is no 11n mode 1x1 is used (when no bt coexistence is used) -> always chain0 is used. So i think that antenna diversity is impossible in legacy mode!? with no bt coexictence. I don't know the term bt coexistence (Bluetooth - coexictence!?) My patch only overides the capability field. I don't touch this function. So I think my patch can only work well in 11n mode. Btw. If you setup 2x2 on AR9160 you will use chain0 an chain1. I got strange behaviour, when I tried to use for example chain 0 and chain2 Robert