cnss2: Add dump collection for CAL memory
Add CNSS_FW_CAL dump segement for dump collection of CAL memory Change-Id: Ie3d339f3db8898e087d8460d1efb7b9a8f75a13d CRs-Fixed: 3684125
This commit is contained in:

committed by
Ravindra Konda

parent
b33774b0e9
commit
36a061b235
@@ -277,6 +277,7 @@ enum cnss_fw_dump_type {
|
|||||||
CNSS_FW_IMAGE,
|
CNSS_FW_IMAGE,
|
||||||
CNSS_FW_RDDM,
|
CNSS_FW_RDDM,
|
||||||
CNSS_FW_REMOTE_HEAP,
|
CNSS_FW_REMOTE_HEAP,
|
||||||
|
CNSS_FW_CAL,
|
||||||
CNSS_FW_DUMP_TYPE_MAX,
|
CNSS_FW_DUMP_TYPE_MAX,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
19
cnss2/pci.c
19
cnss2/pci.c
@@ -5937,7 +5937,7 @@ static void cnss_pci_add_dump_seg(struct cnss_pci_data *pci_priv,
|
|||||||
cnss_pr_dbg("Seg: %x, va: %pK, dma: %pa, size: 0x%zx\n",
|
cnss_pr_dbg("Seg: %x, va: %pK, dma: %pa, size: 0x%zx\n",
|
||||||
seg_no, va, &dma, size);
|
seg_no, va, &dma, size);
|
||||||
|
|
||||||
if (cnss_va_to_pa(dev, size, va, dma, &pa, DMA_ATTR_FORCE_CONTIGUOUS))
|
if (type == CNSS_FW_CAL || cnss_va_to_pa(dev, size, va, dma, &pa, DMA_ATTR_FORCE_CONTIGUOUS))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
cnss_minidump_add_region(plat_priv, type, seg_no, va, pa, size);
|
cnss_minidump_add_region(plat_priv, type, seg_no, va, pa, size);
|
||||||
@@ -6212,6 +6212,16 @@ void cnss_pci_collect_dump_info(struct cnss_pci_data *pci_priv, bool in_panic)
|
|||||||
} else {
|
} else {
|
||||||
cnss_pr_dbg("Skip remote heap dumps as it is non-contiguous\n");
|
cnss_pr_dbg("Skip remote heap dumps as it is non-contiguous\n");
|
||||||
}
|
}
|
||||||
|
} else if (fw_mem[i].type == CNSS_MEM_CAL_V01) {
|
||||||
|
cnss_pr_dbg("Collect CAL memory dump segment\n");
|
||||||
|
cnss_pci_add_dump_seg(pci_priv, dump_seg,
|
||||||
|
CNSS_FW_CAL, j,
|
||||||
|
fw_mem[i].va,
|
||||||
|
fw_mem[i].pa,
|
||||||
|
fw_mem[i].size);
|
||||||
|
dump_seg++;
|
||||||
|
dump_data->nentries++;
|
||||||
|
j++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -6264,6 +6274,13 @@ void cnss_pci_clear_dump_info(struct cnss_pci_data *pci_priv)
|
|||||||
fw_mem[i].size);
|
fw_mem[i].size);
|
||||||
dump_seg++;
|
dump_seg++;
|
||||||
j++;
|
j++;
|
||||||
|
} else if (fw_mem[i].type == CNSS_MEM_CAL_V01) {
|
||||||
|
cnss_pci_remove_dump_seg(pci_priv, dump_seg,
|
||||||
|
CNSS_FW_CAL, j,
|
||||||
|
fw_mem[i].va, fw_mem[i].pa,
|
||||||
|
fw_mem[i].size);
|
||||||
|
dump_seg++;
|
||||||
|
j++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user