]> git.karo-electronics.de Git - linux-beck.git/blobdiff - drivers/net/wireless/iwlwifi/dvm/main.c
iwlwifi: fix queue flush confusion
[linux-beck.git] / drivers / net / wireless / iwlwifi / dvm / main.c
index 7ff3f14306784169f886e5c7ca570d8b217a7309..95d348b028461a0ab21b1d856b5a87837edc0d53 100644 (file)
@@ -511,7 +511,7 @@ static void iwl_bg_tx_flush(struct work_struct *work)
                return;
 
        IWL_DEBUG_INFO(priv, "device request: flush all tx frames\n");
-       iwlagn_dev_txfifo_flush(priv, IWL_DROP_ALL);
+       iwlagn_dev_txfifo_flush(priv);
 }
 
 /*
@@ -1191,8 +1191,6 @@ static void iwl_option_config(struct iwl_priv *priv)
 
 static int iwl_eeprom_init_hw_params(struct iwl_priv *priv)
 {
-       u16 radio_cfg;
-
        priv->eeprom_data->sku = priv->eeprom_data->sku;
 
        if (priv->eeprom_data->sku & EEPROM_SKU_CAP_11N_ENABLE &&
@@ -1208,8 +1206,6 @@ static int iwl_eeprom_init_hw_params(struct iwl_priv *priv)
 
        IWL_INFO(priv, "Device SKU: 0x%X\n", priv->eeprom_data->sku);
 
-       radio_cfg = priv->eeprom_data->radio_cfg;
-
        priv->hw_params.tx_chains_num =
                num_of_ant(priv->eeprom_data->valid_tx_ant);
        if (priv->cfg->rx_with_siso_diversity)
@@ -1334,6 +1330,9 @@ static struct iwl_op_mode *iwl_op_mode_dvm_start(struct iwl_trans *trans,
        /* Configure transport layer */
        iwl_trans_configure(priv->trans, &trans_cfg);
 
+       trans->rx_mpdu_cmd = REPLY_RX_MPDU_CMD;
+       trans->rx_mpdu_cmd_hdr_size = sizeof(struct iwl_rx_mpdu_res_start);
+
        /* At this point both hw and priv are allocated. */
 
        SET_IEEE80211_DEV(priv->hw, priv->trans->dev);
@@ -1508,10 +1507,6 @@ static void iwl_op_mode_dvm_stop(struct iwl_op_mode *op_mode)
 
        iwl_tt_exit(priv);
 
-       /*This will stop the queues, move the device to low power state */
-       priv->ucode_loaded = false;
-       iwl_trans_stop_device(priv->trans);
-
        kfree(priv->eeprom_blob);
        iwl_free_eeprom_data(priv->eeprom_data);
 
@@ -1927,8 +1922,6 @@ static void iwlagn_fw_error(struct iwl_priv *priv, bool ondemand)
         * commands by clearing the ready bit */
        clear_bit(STATUS_READY, &priv->status);
 
-       wake_up(&priv->trans->wait_command_queue);
-
        if (!ondemand) {
                /*
                 * If firmware keep reloading, then it indicate something
@@ -2152,8 +2145,6 @@ static int __init iwl_init(void)
 {
 
        int ret;
-       pr_info(DRV_DESCRIPTION ", " DRV_VERSION "\n");
-       pr_info(DRV_COPYRIGHT "\n");
 
        ret = iwlagn_rate_control_register();
        if (ret) {