diff options
author | Wey-Yi Guy <wey-yi.w.guy@intel.com> | 2011-02-06 11:56:35 -0500 |
---|---|---|
committer | Wey-Yi Guy <wey-yi.w.guy@intel.com> | 2011-02-11 14:51:49 -0500 |
commit | c4197c6298750d308fc819c0525902f49ab920fb (patch) | |
tree | f93e23924918d972898994e9db59ea026148b375 | |
parent | 6d1d4ea4a82f8c17a3ff7c2f677bc3d41ea7484b (diff) |
iwlagn: donot process bt update when bt coex disable
If bt coex is disabled, do not process any bt related information
from uCode even received.
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-agn-lib.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-agn-lib.c b/drivers/net/wireless/iwlwifi/iwl-agn-lib.c index 3aa486437509..325ff5c89ee8 100644 --- a/drivers/net/wireless/iwlwifi/iwl-agn-lib.c +++ b/drivers/net/wireless/iwlwifi/iwl-agn-lib.c | |||
@@ -1832,7 +1832,7 @@ void iwlagn_send_advance_bt_config(struct iwl_priv *priv) | |||
1832 | * IBSS mode (no proper uCode support for coex then). | 1832 | * IBSS mode (no proper uCode support for coex then). |
1833 | */ | 1833 | */ |
1834 | if (!bt_coex_active || priv->iw_mode == NL80211_IFTYPE_ADHOC) { | 1834 | if (!bt_coex_active || priv->iw_mode == NL80211_IFTYPE_ADHOC) { |
1835 | bt_cmd.flags = 0; | 1835 | bt_cmd.flags = IWLAGN_BT_FLAG_COEX_MODE_DISABLED; |
1836 | } else { | 1836 | } else { |
1837 | bt_cmd.flags = IWLAGN_BT_FLAG_COEX_MODE_3W << | 1837 | bt_cmd.flags = IWLAGN_BT_FLAG_COEX_MODE_3W << |
1838 | IWLAGN_BT_FLAG_COEX_MODE_SHIFT; | 1838 | IWLAGN_BT_FLAG_COEX_MODE_SHIFT; |
@@ -1869,6 +1869,11 @@ static void iwlagn_bt_traffic_change_work(struct work_struct *work) | |||
1869 | struct iwl_rxon_context *ctx; | 1869 | struct iwl_rxon_context *ctx; |
1870 | int smps_request = -1; | 1870 | int smps_request = -1; |
1871 | 1871 | ||
1872 | if (priv->bt_enable_flag == IWLAGN_BT_FLAG_COEX_MODE_DISABLED) { | ||
1873 | /* bt coex disabled */ | ||
1874 | return; | ||
1875 | } | ||
1876 | |||
1872 | /* | 1877 | /* |
1873 | * Note: bt_traffic_load can be overridden by scan complete and | 1878 | * Note: bt_traffic_load can be overridden by scan complete and |
1874 | * coex profile notifications. Ignore that since only bad consequence | 1879 | * coex profile notifications. Ignore that since only bad consequence |
@@ -2022,6 +2027,11 @@ void iwlagn_bt_coex_profile_notif(struct iwl_priv *priv, | |||
2022 | struct iwl_bt_coex_profile_notif *coex = &pkt->u.bt_coex_profile_notif; | 2027 | struct iwl_bt_coex_profile_notif *coex = &pkt->u.bt_coex_profile_notif; |
2023 | struct iwl_bt_uart_msg *uart_msg = &coex->last_bt_uart_msg; | 2028 | struct iwl_bt_uart_msg *uart_msg = &coex->last_bt_uart_msg; |
2024 | 2029 | ||
2030 | if (priv->bt_enable_flag == IWLAGN_BT_FLAG_COEX_MODE_DISABLED) { | ||
2031 | /* bt coex disabled */ | ||
2032 | return; | ||
2033 | } | ||
2034 | |||
2025 | IWL_DEBUG_NOTIF(priv, "BT Coex notification:\n"); | 2035 | IWL_DEBUG_NOTIF(priv, "BT Coex notification:\n"); |
2026 | IWL_DEBUG_NOTIF(priv, " status: %d\n", coex->bt_status); | 2036 | IWL_DEBUG_NOTIF(priv, " status: %d\n", coex->bt_status); |
2027 | IWL_DEBUG_NOTIF(priv, " traffic load: %d\n", coex->bt_traffic_load); | 2037 | IWL_DEBUG_NOTIF(priv, " traffic load: %d\n", coex->bt_traffic_load); |