From: Peng Fan Date: Wed, 13 Jul 2016 02:13:08 +0000 (+0800) Subject: iommu/arm-smmu: Drop devm_free_irq when driver detach X-Git-Tag: v4.9-rc1~44^2^6^2~27 X-Git-Url: https://git.kernel.dk/?p=linux-2.6-block.git;a=commitdiff_plain;h=e2d42311ffc9a5014eb129d02eb0e7bc791430f0 iommu/arm-smmu: Drop devm_free_irq when driver detach There is no need to call devm_free_irq when driver detach. devres_release_all which is called after 'drv->remove' will release all managed resources. Signed-off-by: Peng Fan Reviewed-by: Robin Murphy Cc: Will Deacon Signed-off-by: Will Deacon --- diff --git a/drivers/iommu/arm-smmu.c b/drivers/iommu/arm-smmu.c index 2db74ebc3240..069b2ea89113 100644 --- a/drivers/iommu/arm-smmu.c +++ b/drivers/iommu/arm-smmu.c @@ -1998,7 +1998,6 @@ out_put_masters: static int arm_smmu_device_remove(struct platform_device *pdev) { - int i; struct device *dev = &pdev->dev; struct arm_smmu_device *curr, *smmu = NULL; struct rb_node *node; @@ -2025,9 +2024,6 @@ static int arm_smmu_device_remove(struct platform_device *pdev) if (!bitmap_empty(smmu->context_map, ARM_SMMU_MAX_CBS)) dev_err(dev, "removing device with active domains!\n"); - for (i = 0; i < smmu->num_global_irqs; ++i) - devm_free_irq(smmu->dev, smmu->irqs[i], smmu); - /* Turn the thing off */ writel(sCR0_CLIENTPD, ARM_SMMU_GR0_NS(smmu) + ARM_SMMU_GR0_sCR0); return 0;