qcacld-3.0: Collect ramdump before kernel panic
FW dumps is not getting collected during kernel panic handler. Hence move ramdump collection before kernel panic. CRs-Fixed: 2362637 Change-Id: Id9f1dfefe1560affff6c4ecfca1b8fdba3eb0928
This commit is contained in:
@@ -1669,6 +1669,30 @@ int pld_force_assert_target(struct device *dev)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* pld_collect_rddm() - Collect ramdump before FW assert.
|
||||
* This can used to collect ramdump before FW assert.
|
||||
* @dev: device
|
||||
*
|
||||
* Return: 0 if ramdump is collected successfully
|
||||
* Non zero failure code for errors
|
||||
*/
|
||||
int pld_collect_rddm(struct device *dev)
|
||||
{
|
||||
enum pld_bus_type type = pld_get_bus_type(dev);
|
||||
|
||||
switch (type) {
|
||||
case PLD_BUS_TYPE_PCIE:
|
||||
return pld_pcie_collect_rddm(dev);
|
||||
case PLD_BUS_TYPE_SNOC:
|
||||
case PLD_BUS_TYPE_SDIO:
|
||||
return 0;
|
||||
default:
|
||||
pr_err("Invalid device type %d\n", type);
|
||||
return -EINVAL;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* pld_is_fw_dump_skipped() - get fw dump skipped status.
|
||||
* The subsys ssr status help the driver to decide whether to skip
|
||||
|
@@ -284,6 +284,11 @@ static inline int pld_pcie_force_assert_target(struct device *dev)
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
static inline int pld_pcie_collect_rddm(struct device *dev)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline int pld_pcie_get_user_msi_assignment(struct device *dev,
|
||||
char *user_name,
|
||||
int *num_vectors,
|
||||
@@ -319,6 +324,10 @@ void pld_pcie_schedule_recovery_work(struct device *dev,
|
||||
enum pld_recovery_reason reason);
|
||||
void pld_pcie_device_self_recovery(struct device *dev,
|
||||
enum pld_recovery_reason reason);
|
||||
static inline int pld_pcie_collect_rddm(struct device *dev)
|
||||
{
|
||||
return cnss_force_collect_rddm(dev);
|
||||
}
|
||||
|
||||
static inline void *pld_pcie_smmu_get_mapping(struct device *dev)
|
||||
{
|
||||
|
Reference in New Issue
Block a user