diff --git a/drivers/iommu/rockchip-iommu.c b/drivers/iommu/rockchip-iommu.c index 8fb0fcb16740..854ed28839c1 100644 --- a/drivers/iommu/rockchip-iommu.c +++ b/drivers/iommu/rockchip-iommu.c @@ -982,6 +982,10 @@ static int rk_iommu_attach_device(struct iommu_domain *domain, iommu->domain = domain; + /* Attach NULL for disable iommu */ + if (!domain) + return 0; + spin_lock_irqsave(&rk_domain->iommus_lock, flags); list_add_tail(&iommu->node, &rk_domain->iommus); spin_unlock_irqrestore(&rk_domain->iommus_lock, flags);