Even though the IOMMU shares IRQ with its master, the struct device
passed to {request,free}_irq is supposed to represent the device that is
signalling the interrupt. This patch makes the driver use IOMMU device
instead of master's device to make things clear.
Signed-off-by: Simon Xue <xxm@rock-chips.com>
Signed-off-by: Shunqian Zheng <zhengsq@rock-chips.com>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Signed-off-by: Tomasz Figa <tfiga@chromium.org>
Signed-off-by: Joerg Roedel <jroedel@suse.de>
 
        iommu->domain = domain;
 
-       ret = devm_request_irq(dev, iommu->irq, rk_iommu_irq,
+       ret = devm_request_irq(iommu->dev, iommu->irq, rk_iommu_irq,
                               IRQF_SHARED, dev_name(dev), iommu);
        if (ret)
                return ret;
        }
        rk_iommu_disable_stall(iommu);
 
-       devm_free_irq(dev, iommu->irq, iommu);
+       devm_free_irq(iommu->dev, iommu->irq, iommu);
 
        iommu->domain = NULL;