summaryrefslogtreecommitdiff
path: root/drivers/media
diff options
context:
space:
mode:
authorBenjamin Chan <bkchan@codeaurora.org>2017-02-15 11:40:15 -0500
committerGerrit - the friendly Code Review server <code-review@localhost>2017-02-17 14:16:38 -0800
commit296dd37fbf9f8f88d63d736d8c88b84cedff4726 (patch)
treef967a9fded1fb2524db4d1a7225e9dab4774e297 /drivers/media
parent7066afbbe98876327824a305c9d0737114136baa (diff)
msm: sde: Remove panic from rotator smmu fault handler
During SMMU fault for SDE rotator, it should return to SMMU driver after collecting dump data, so that SMMU driver can generate proper analysis info for the fault. CRs-Fixed: 2007472 Change-Id: I59b7b12e53524e40811f1237e4366b23a4933561 Signed-off-by: Benjamin Chan <bkchan@codeaurora.org>
Diffstat (limited to 'drivers/media')
-rw-r--r--drivers/media/platform/msm/sde/rotator/sde_rotator_smmu.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/drivers/media/platform/msm/sde/rotator/sde_rotator_smmu.c b/drivers/media/platform/msm/sde/rotator/sde_rotator_smmu.c
index 9b1175d8f4a6..43636b43eeb8 100644
--- a/drivers/media/platform/msm/sde/rotator/sde_rotator_smmu.c
+++ b/drivers/media/platform/msm/sde/rotator/sde_rotator_smmu.c
@@ -530,11 +530,18 @@ static int sde_smmu_fault_handler(struct iommu_domain *domain,
sde_smmu = (struct sde_smmu_client *)token;
- /* trigger rotator panic and dump */
- SDEROT_ERR("trigger rotator panic and dump, iova=0x%08lx\n", iova);
+ /* trigger rotator dump */
+ SDEROT_ERR("trigger rotator dump, iova=0x%08lx, flags=0x%x\n",
+ iova, flags);
+ SDEROT_ERR("SMMU device:%s", sde_smmu->dev->kobj.name);
- sde_rot_dump_panic();
+ /* generate dump, but no panic */
+ sde_rot_evtlog_tout_handler(false, __func__, "rot", "vbif_dbg_bus");
+ /*
+ * return -ENOSYS to allow smmu driver to dump out useful
+ * debug info.
+ */
return rc;
}