From mboxrd@z Thu Jan 1 00:00:00 1970 From: sandeep suresh Date: Thu, 4 Apr 2013 23:19:49 +0800 (SGT) Subject: [ath9k-devel] AR9287 ; 2-wire coexistence expected behavior In-Reply-To: <515A0847.7000306@gmail.com> References: <515A0847.7000306@gmail.com> Message-ID: <1365088789.89181.YahooMailNeo@web193504.mail.sg3.yahoo.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: ath9k-devel@lists.ath9k.org Hello All, ????I started using the "default" 2-wire coexistence without making any changes in ath9k driver for AR9287. First executed "modprobe ath9k btcoex_enable = 1".I used some print statements and came to know that 2-wire initialization (ath9k_hw_btcoex_init_2wire()) and 2-wire enable? (ath9k_hw_btcoex_enable_2wire())routines were executed. ? My understanding on 2-wire coex: Please correct me if I am wrong. When WLAN activitiy (Tx or Rx; AR9287 is 2 x 2 MIMO) is in progress, WLAN_ACTIVE is asserted. If Bluetooth wants to transmit any packets, than BT_ACTIVE line has to be asserted (pull high). Then WLAN should buffer any transmissions (however there can be receptions/ACK) and allow Bluetooth to transmit packets. AR9287 stops transmission when BT_ACTIVE is true. ? Based on the following code snippet, from hw.c: ? if (common->btcoex_enabled) { ??if (AR_SREV_9300_20_OR_LATER(ah)) { ???btcoex_hw->scheme = ATH_BTCOEX_CFG_3WIRE; ???btcoex_hw->btactive_gpio = ATH_BTACTIVE_GPIO_9300; ???btcoex_hw->wlanactive_gpio = ATH_WLANACTIVE_GPIO_9300; ???btcoex_hw->btpriority_gpio = ATH_BTPRIORITY_GPIO_9300; ??} else if (AR_SREV_9280_20_OR_LATER(ah)) { ???btcoex_hw->btactive_gpio = ATH_BTACTIVE_GPIO_9280; ???btcoex_hw->wlanactive_gpio = ATH_WLANACTIVE_GPIO_9280; ???if (AR_SREV_9285(ah)) { ????btcoex_hw->scheme = ATH_BTCOEX_CFG_3WIRE; ????btcoex_hw->btpriority_gpio = ??????ATH_BTPRIORITY_GPIO_9285; ???} else { ????btcoex_hw->scheme = ATH_BTCOEX_CFG_2WIRE; ???} ??} ?} else { ??btcoex_hw->scheme = ATH_BTCOEX_CFG_NONE; ?} ? I understand that ATH_BTCOEX_CFG_2_WIRE, ATH_BTACTIVE_GPIO_9280 (GPIO6 as per btcoex.h) and ATH_WLANACTIVE_GPIO_9280 (GPIO5 as per btcoex.h) are used. ? I next started monitoring GPIO5 on?oscillaoscope to?see WLAN activity and I could see a lot of pulse trains. Next in order to simulate high priority BT traffic, I pulled the line GPIO6 high. But I did not see any change in WLAN activity as I could continue to see the pulse trains. My expectation was that there should not be any WLAN activity and hence no pulses. Please guide if I am missing anything? ? Thanks & regards Sandeep -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.ath9k.org/pipermail/ath9k-devel/attachments/20130404/83212ab9/attachment.htm