iwlwifi: dbg: treat non active regions as unsupported regions
authorRotem Saado <rotem.saado@intel.com>
Sun, 17 Oct 2021 13:59:53 +0000 (16:59 +0300)
committerLuca Coelho <luciano.coelho@intel.com>
Fri, 22 Oct 2021 07:54:18 +0000 (10:54 +0300)
If a region is not active, it means that it was not defined as a region
TLV in the FW image.  We should treat them as unsupported in that case.

This saves operational driver memory and run time when collecting debug
data by skipping unsupported regions.

Signed-off-by: Rotem Saado <rotem.saado@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
Link: https://lore.kernel.org/r/iwlwifi.20211017165728.8025bd29d86a.I3ecb4e273bf714e426d82217e0590264cb763419@changeid
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
drivers/net/wireless/intel/iwlwifi/iwl-dbg-tlv.c

index 75d5ed0c32048b0ed6f44108e608c35e5c5f9d9a..f487cc8b9fe0b83f1d64f27b947a7cf526b35d75 100644 (file)
@@ -1179,8 +1179,10 @@ static void iwl_dbg_tlv_init_cfg(struct iwl_fw_runtime *fwrt)
                        &fwrt->trans->dbg.active_regions[i];
                u32 reg_type;
 
-               if (!*active_reg)
+               if (!*active_reg) {
+                       fwrt->trans->dbg.unsupported_region_msk |= BIT(i);
                        continue;
+               }
 
                reg = (void *)(*active_reg)->data;
                reg_type = le32_to_cpu(reg->type);