diff options
author | Johannes Berg <johannes.berg@intel.com> | 2011-04-05 12:42:05 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2011-04-07 15:51:39 -0400 |
commit | 17445b8c443bb1aaf7f85bcf60676d04be1c467c (patch) | |
tree | 06c5272a31b83033377e65151e839b190bf42513 /drivers/net/wireless/iwlwifi | |
parent | d7d5783c6668b54111cc77005755799e94261497 (diff) |
iwlagn: init cmd_queue earlier
We know after loading the ucode whether it will
support PAN or not, so we can also initialise
the cmd_queue variable much earlier.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-agn.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-agn.c b/drivers/net/wireless/iwlwifi/iwl-agn.c index b3b1e84c9311..d700860434a5 100644 --- a/drivers/net/wireless/iwlwifi/iwl-agn.c +++ b/drivers/net/wireless/iwlwifi/iwl-agn.c | |||
@@ -1700,6 +1700,11 @@ static void iwl_ucode_callback(const struct firmware *ucode_raw, void *context) | |||
1700 | } else | 1700 | } else |
1701 | priv->sta_key_max_num = STA_KEY_MAX_NUM; | 1701 | priv->sta_key_max_num = STA_KEY_MAX_NUM; |
1702 | 1702 | ||
1703 | if (priv->valid_contexts != BIT(IWL_RXON_CTX_BSS)) | ||
1704 | priv->cmd_queue = IWL_IPAN_CMD_QUEUE_NUM; | ||
1705 | else | ||
1706 | priv->cmd_queue = IWL_DEFAULT_CMD_QUEUE_NUM; | ||
1707 | |||
1703 | if (ucode_capa.flags & IWL_UCODE_TLV_FLAGS_BTSTATS || | 1708 | if (ucode_capa.flags & IWL_UCODE_TLV_FLAGS_BTSTATS || |
1704 | (priv->cfg->bt_params && priv->cfg->bt_params->bt_statistics)) | 1709 | (priv->cfg->bt_params && priv->cfg->bt_params->bt_statistics)) |
1705 | priv->bt_statistics = true; | 1710 | priv->bt_statistics = true; |
@@ -2518,12 +2523,6 @@ static int __iwl_up(struct iwl_priv *priv) | |||
2518 | 2523 | ||
2519 | iwl_write32(priv, CSR_INT, 0xFFFFFFFF); | 2524 | iwl_write32(priv, CSR_INT, 0xFFFFFFFF); |
2520 | 2525 | ||
2521 | /* must be initialised before iwl_hw_nic_init */ | ||
2522 | if (priv->valid_contexts != BIT(IWL_RXON_CTX_BSS)) | ||
2523 | priv->cmd_queue = IWL_IPAN_CMD_QUEUE_NUM; | ||
2524 | else | ||
2525 | priv->cmd_queue = IWL_DEFAULT_CMD_QUEUE_NUM; | ||
2526 | |||
2527 | ret = iwlagn_hw_nic_init(priv); | 2526 | ret = iwlagn_hw_nic_init(priv); |
2528 | if (ret) { | 2527 | if (ret) { |
2529 | IWL_ERR(priv, "Unable to init nic\n"); | 2528 | IWL_ERR(priv, "Unable to init nic\n"); |