From de1cbb0ebd2d3b3e66bf6682af5798d76f423c68 Mon Sep 17 00:00:00 2001 From: Yandong Lin Date: Tue, 10 Oct 2023 10:07:45 +0800 Subject: [PATCH] video: rockchip: mpp: fix iommu fault irq triggered repeatedly Add mask iommu irq in iommu fault handle func to prevent iommu trigger pagefault repeatedly. Signed-off-by: Yandong Lin Change-Id: I11c9b918e3a9c3af576b7f82cbdc7dbeb960dbd8 --- drivers/video/rockchip/mpp/mpp_iommu.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/video/rockchip/mpp/mpp_iommu.c b/drivers/video/rockchip/mpp/mpp_iommu.c index 116ec664ec00..1abbfb74f4e2 100644 --- a/drivers/video/rockchip/mpp/mpp_iommu.c +++ b/drivers/video/rockchip/mpp/mpp_iommu.c @@ -463,6 +463,12 @@ static int mpp_iommu_handle(struct iommu_domain *iommu, else mpp_task_dump_hw_reg(mpp); + /* + * Mask iommu irq, in order for iommu not repeatedly trigger pagefault. + * Until the pagefault task finish by hw timeout. + */ + rockchip_iommu_mask_irq(mpp->dev); + return 0; }