diff options
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-agn.c')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-agn.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-agn.c b/drivers/net/wireless/iwlwifi/iwl-agn.c index ad0e67f5c0d4..55ac079916d7 100644 --- a/drivers/net/wireless/iwlwifi/iwl-agn.c +++ b/drivers/net/wireless/iwlwifi/iwl-agn.c | |||
@@ -2813,6 +2813,22 @@ static void iwl_alive_start(struct iwl_priv *priv) | |||
2813 | if (iwl_is_rfkill(priv)) | 2813 | if (iwl_is_rfkill(priv)) |
2814 | return; | 2814 | return; |
2815 | 2815 | ||
2816 | if (priv->cfg->advanced_bt_coexist) { | ||
2817 | /* Configure Bluetooth device coexistence support */ | ||
2818 | priv->bt_valid = IWLAGN_BT_ALL_VALID_MSK; | ||
2819 | priv->kill_ack_mask = IWLAGN_BT_KILL_ACK_MASK_DEFAULT; | ||
2820 | priv->kill_cts_mask = IWLAGN_BT_KILL_CTS_MASK_DEFAULT; | ||
2821 | priv->cfg->ops->hcmd->send_bt_config(priv); | ||
2822 | priv->bt_valid = IWLAGN_BT_VALID_ENABLE_FLAGS; | ||
2823 | if (bt_coex_active && priv->iw_mode != NL80211_IFTYPE_ADHOC) | ||
2824 | iwlagn_send_prio_tbl(priv); | ||
2825 | |||
2826 | /* FIXME: w/a to force change uCode BT state machine */ | ||
2827 | iwlagn_send_bt_env(priv, IWL_BT_COEX_ENV_OPEN, | ||
2828 | BT_COEX_PRIO_TBL_EVT_INIT_CALIB2); | ||
2829 | iwlagn_send_bt_env(priv, IWL_BT_COEX_ENV_CLOSE, | ||
2830 | BT_COEX_PRIO_TBL_EVT_INIT_CALIB2); | ||
2831 | } | ||
2816 | ieee80211_wake_queues(priv->hw); | 2832 | ieee80211_wake_queues(priv->hw); |
2817 | 2833 | ||
2818 | priv->active_rate = IWL_RATES_MASK; | 2834 | priv->active_rate = IWL_RATES_MASK; |