iwlwifi: mvm: disable prph collection in a000 hw
authorLiad Kaufman <liad.kaufman@intel.com>
Sun, 26 Mar 2017 11:09:46 +0000 (14:09 +0300)
committerLuca Coelho <luciano.coelho@intel.com>
Mon, 5 Jun 2017 20:29:38 +0000 (23:29 +0300)
Apart from the current list of PRPH that can't be
collected in A000 HW, the rest of the debug dump
data the driver collects is valid, so there is no
need to disable collection only because of this.

Disable PRPH collecting in A000 HW, and allow
collecting the rest of the debug data.

Signed-off-by: Liad Kaufman <liad.kaufman@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
drivers/net/wireless/intel/iwlwifi/mvm/fw-dbg.c

index 8aa2992e1427b3756548d5b62421ca39826268e6..aac0426112c703c5388ddca63c0e1d9dd21ea5e6 100644 (file)
@@ -640,18 +640,21 @@ void iwl_mvm_fw_error_dump(struct iwl_mvm *mvm)
                }
 
                /* Make room for PRPH registers */
-               for (i = 0; i < ARRAY_SIZE(iwl_prph_dump_addr_comm); i++) {
-                       /* The range includes both boundaries */
-                       int num_bytes_in_chunk =
-                               iwl_prph_dump_addr_comm[i].end -
-                               iwl_prph_dump_addr_comm[i].start + 4;
-
-                       prph_len += sizeof(*dump_data) +
-                               sizeof(struct iwl_fw_error_dump_prph) +
-                               num_bytes_in_chunk;
+               if (!mvm->trans->cfg->gen2) {
+                       for (i = 0; i < ARRAY_SIZE(iwl_prph_dump_addr_comm);
+                            i++) {
+                               /* The range includes both boundaries */
+                               int num_bytes_in_chunk =
+                                       iwl_prph_dump_addr_comm[i].end -
+                                       iwl_prph_dump_addr_comm[i].start + 4;
+
+                               prph_len += sizeof(*dump_data) +
+                                       sizeof(struct iwl_fw_error_dump_prph) +
+                                       num_bytes_in_chunk;
+                       }
                }
 
-               if (mvm->cfg->mq_rx_supported) {
+               if (!mvm->trans->cfg->gen2 && mvm->cfg->mq_rx_supported) {
                        for (i = 0; i <
                                ARRAY_SIZE(iwl_prph_dump_addr_9000); i++) {
                                /* The range includes both boundaries */