]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
iwlwifi: mvm: remove version 2 of paging command
authorJohannes Berg <johannes.berg@intel.com>
Thu, 1 Jun 2017 09:37:25 +0000 (11:37 +0200)
committerLuca Coelho <luciano.coelho@intel.com>
Thu, 29 Jun 2017 10:26:27 +0000 (13:26 +0300)
Only a000-series devices were going to use this, but actually
initialize using the context info, which includes paging, so
this code is never invoked; remove it.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
drivers/net/wireless/intel/iwlwifi/mvm/fw-api.h
drivers/net/wireless/intel/iwlwifi/mvm/fw.c

index f3ca61ff9f580d57ba308d0aad45ddcf500f9ce1..3e297c95e8ff16a248f431caa8e50cb1d2dfd8fd 100644 (file)
@@ -326,7 +326,7 @@ enum iwl_legacy_cmds {
 
        /**
         * @FW_PAGING_BLOCK_CMD:
-        * &struct iwl_fw_paging_cmd or &struct iwl_fw_paging_cmd_v1
+        * &struct iwl_fw_paging_cmd
         */
        FW_PAGING_BLOCK_CMD = 0x4f,
 
@@ -998,25 +998,6 @@ struct iwl_nvm_access_cmd {
 
 #define NUM_OF_FW_PAGING_BLOCKS        33 /* 32 for data and 1 block for CSS */
 
-/**
- * struct iwl_fw_paging_cmd_v1 - paging layout
- *
- * (FW_PAGING_BLOCK_CMD = 0x4f)
- *
- * Send to FW the paging layout in the driver.
- *
- * @flags: various flags for the command
- * @block_size: the block size in powers of 2
- * @block_num: number of blocks specified in the command.
- * @device_phy_addr: virtual addresses from device side
- */
-struct iwl_fw_paging_cmd_v1 {
-       __le32 flags;
-       __le32 block_size;
-       __le32 block_num;
-       __le32 device_phy_addr[NUM_OF_FW_PAGING_BLOCKS];
-} __packed; /* FW_PAGING_BLOCK_CMD_API_S_VER_1 */
-
 /**
  * struct iwl_fw_paging_cmd - paging layout
  *
@@ -1033,8 +1014,8 @@ struct iwl_fw_paging_cmd {
        __le32 flags;
        __le32 block_size;
        __le32 block_num;
-       __le64 device_phy_addr[NUM_OF_FW_PAGING_BLOCKS];
-} __packed; /* FW_PAGING_BLOCK_CMD_API_S_VER_2 */
+       __le32 device_phy_addr[NUM_OF_FW_PAGING_BLOCKS];
+} __packed; /* FW_PAGING_BLOCK_CMD_API_S_VER_1 */
 
 /*
  * Fw items ID's
index 80c42ef981c0abfe91589a3c367a982f013d56fb..79e7a7a285dc960597e945ce7b80f96e729a86ad 100644 (file)
@@ -384,44 +384,29 @@ static int iwl_save_fw_paging(struct iwl_mvm *mvm,
 /* send paging cmd to FW in case CPU2 has paging image */
 static int iwl_send_paging_cmd(struct iwl_mvm *mvm, const struct fw_img *fw)
 {
-       union {
-               struct iwl_fw_paging_cmd v2;
-               struct iwl_fw_paging_cmd_v1 v1;
-       } paging_cmd = {
-               .v2.flags =
-                       cpu_to_le32(PAGING_CMD_IS_SECURED |
-                                   PAGING_CMD_IS_ENABLED |
-                                   (mvm->num_of_pages_in_last_blk <<
-                                   PAGING_CMD_NUM_OF_PAGES_IN_LAST_GRP_POS)),
-               .v2.block_size = cpu_to_le32(BLOCK_2_EXP_SIZE),
-               .v2.block_num = cpu_to_le32(mvm->num_of_paging_blk),
+       struct iwl_fw_paging_cmd paging_cmd = {
+               .flags = cpu_to_le32(PAGING_CMD_IS_SECURED |
+                                    PAGING_CMD_IS_ENABLED |
+                                    (mvm->num_of_pages_in_last_blk <<
+                                     PAGING_CMD_NUM_OF_PAGES_IN_LAST_GRP_POS)),
+               .block_size = cpu_to_le32(BLOCK_2_EXP_SIZE),
+               .block_num = cpu_to_le32(mvm->num_of_paging_blk),
        };
-       int blk_idx, size = sizeof(paging_cmd.v2);
-
-       /* A bit hard coded - but this is the old API and will be deprecated */
-       if (!iwl_mvm_has_new_tx_api(mvm))
-               size = sizeof(paging_cmd.v1);
+       int blk_idx;
 
        /* loop for for all paging blocks + CSS block */
        for (blk_idx = 0; blk_idx < mvm->num_of_paging_blk + 1; blk_idx++) {
                dma_addr_t addr = mvm->fw_paging_db[blk_idx].fw_paging_phys;
+               __le32 phy_addr;
 
                addr = addr >> PAGE_2_EXP_SIZE;
-
-               if (iwl_mvm_has_new_tx_api(mvm)) {
-                       __le64 phy_addr = cpu_to_le64(addr);
-
-                       paging_cmd.v2.device_phy_addr[blk_idx] = phy_addr;
-               } else {
-                       __le32 phy_addr = cpu_to_le32(addr);
-
-                       paging_cmd.v1.device_phy_addr[blk_idx] = phy_addr;
-               }
+               phy_addr = cpu_to_le32(addr);
+               paging_cmd.device_phy_addr[blk_idx] = phy_addr;
        }
 
        return iwl_mvm_send_cmd_pdu(mvm, iwl_cmd_id(FW_PAGING_BLOCK_CMD,
                                                    IWL_ALWAYS_LONG_GROUP, 0),
-                                   0, size, &paging_cmd);
+                                   0, sizeof(paging_cmd), &paging_cmd);
 }
 
 /*