mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-15 01:01:56 -04:00
cnss2: Ignore ramdump init failure
Ramdump feature is not supported in GKI build. Ignore this feature init failure. CRs-fixed: 2648907 Change-Id: I1d2116159700be3ea0cab4290902ce8f3daf6f05 Signed-off-by: Manikandan Mohan <manikand@codeaurora.org>
This commit is contained in:
parent
17c22334d7
commit
52aaef0622
2 changed files with 34 additions and 2 deletions
|
|
@ -1710,6 +1710,27 @@ static void cnss_unregister_ramdump_v1(struct cnss_plat_data *plat_priv)
|
|||
ramdump_info->ramdump_pa);
|
||||
}
|
||||
|
||||
/**
|
||||
* cnss_ignore_dump_data_reg_fail - Ignore Ramdump table register failure
|
||||
* @ret: Error returned by msm_dump_data_register_nominidump
|
||||
*
|
||||
* For Lahaina GKI boot, we dont have support for mem dump feature. So
|
||||
* ignore failure.
|
||||
*
|
||||
* Return: Same given error code if mem dump feature enabled, 0 otherwise
|
||||
*/
|
||||
#ifdef CONFIG_QCOM_MEMORY_DUMP_V2
|
||||
static int cnss_ignore_dump_data_reg_fail(int ret)
|
||||
{
|
||||
return ret;
|
||||
}
|
||||
#else
|
||||
static int cnss_ignore_dump_data_reg_fail(int ret)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
static int cnss_register_ramdump_v2(struct cnss_plat_data *plat_priv)
|
||||
{
|
||||
int ret = 0;
|
||||
|
|
@ -1746,7 +1767,9 @@ static int cnss_register_ramdump_v2(struct cnss_plat_data *plat_priv)
|
|||
ret = msm_dump_data_register_nominidump(MSM_DUMP_TABLE_APPS,
|
||||
&dump_entry);
|
||||
if (ret) {
|
||||
cnss_pr_err("Failed to setup dump table, err = %d\n", ret);
|
||||
ret = cnss_ignore_dump_data_reg_fail(ret);
|
||||
cnss_pr_err("Failed to setup dump table, %s (%d)\n",
|
||||
ret ? "Error" : "Ignoring", ret);
|
||||
goto free_ramdump;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1894,7 +1894,7 @@ static int cnss_qca6290_ramdump(struct cnss_pci_data *pci_priv)
|
|||
struct cnss_dump_meta_info meta_info = {0};
|
||||
int i, ret = 0;
|
||||
|
||||
if (!info_v2->dump_data_valid ||
|
||||
if (!info_v2->dump_data_valid || !dump_seg ||
|
||||
dump_data->nentries == 0)
|
||||
return 0;
|
||||
|
||||
|
|
@ -3818,6 +3818,11 @@ void cnss_pci_collect_dump_info(struct cnss_pci_data *pci_priv, bool in_panic)
|
|||
rddm_image = pci_priv->mhi_ctrl->rddm_image;
|
||||
dump_data->nentries = 0;
|
||||
|
||||
if (!dump_seg) {
|
||||
cnss_pr_warn("FW image dump collection not setup");
|
||||
goto skip_dump;
|
||||
}
|
||||
|
||||
cnss_pr_dbg("Collect FW image dump segment, nentries %d\n",
|
||||
fw_image->entries);
|
||||
|
||||
|
|
@ -3863,6 +3868,7 @@ void cnss_pci_collect_dump_info(struct cnss_pci_data *pci_priv, bool in_panic)
|
|||
if (dump_data->nentries > 0)
|
||||
plat_priv->ramdump_info_v2.dump_data_valid = true;
|
||||
|
||||
skip_dump:
|
||||
cnss_pci_set_mhi_state(pci_priv, CNSS_MHI_RDDM_DONE);
|
||||
complete(&plat_priv->rddm_complete);
|
||||
}
|
||||
|
|
@ -3876,6 +3882,9 @@ void cnss_pci_clear_dump_info(struct cnss_pci_data *pci_priv)
|
|||
struct cnss_fw_mem *fw_mem = plat_priv->fw_mem;
|
||||
int i, j;
|
||||
|
||||
if (!dump_seg)
|
||||
return;
|
||||
|
||||
fw_image = pci_priv->mhi_ctrl->fbc_image;
|
||||
rddm_image = pci_priv->mhi_ctrl->rddm_image;
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue