iommu/sun50i: Drop IOVA cookie management
authorRobin Murphy <robin.murphy@arm.com>
Wed, 11 Aug 2021 12:21:24 +0000 (13:21 +0100)
committerJoerg Roedel <jroedel@suse.de>
Wed, 18 Aug 2021 11:25:32 +0000 (13:25 +0200)
The core code bakes its own cookies now.

CC: Maxime Ripard <mripard@kernel.org>
Signed-off-by: Robin Murphy <robin.murphy@arm.com>
Link: https://lore.kernel.org/r/147edb0ba59be563df19cec3e63e621aa65b7b68.1628682048.git.robin.murphy@arm.com
Signed-off-by: Joerg Roedel <jroedel@suse.de>
drivers/iommu/sun50i-iommu.c

index 181bb1c..9299702 100644 (file)
@@ -7,7 +7,6 @@
 #include <linux/clk.h>
 #include <linux/device.h>
 #include <linux/dma-direction.h>
-#include <linux/dma-iommu.h>
 #include <linux/dma-mapping.h>
 #include <linux/err.h>
 #include <linux/errno.h>
@@ -610,14 +609,10 @@ static struct iommu_domain *sun50i_iommu_domain_alloc(unsigned type)
        if (!sun50i_domain)
                return NULL;
 
-       if (type == IOMMU_DOMAIN_DMA &&
-           iommu_get_dma_cookie(&sun50i_domain->domain))
-               goto err_free_domain;
-
        sun50i_domain->dt = (u32 *)__get_free_pages(GFP_KERNEL | __GFP_ZERO,
                                                    get_order(DT_SIZE));
        if (!sun50i_domain->dt)
-               goto err_put_cookie;
+               goto err_free_domain;
 
        refcount_set(&sun50i_domain->refcnt, 1);
 
@@ -627,10 +622,6 @@ static struct iommu_domain *sun50i_iommu_domain_alloc(unsigned type)
 
        return &sun50i_domain->domain;
 
-err_put_cookie:
-       if (type == IOMMU_DOMAIN_DMA)
-               iommu_put_dma_cookie(&sun50i_domain->domain);
-
 err_free_domain:
        kfree(sun50i_domain);
 
@@ -644,8 +635,6 @@ static void sun50i_iommu_domain_free(struct iommu_domain *domain)
        free_pages((unsigned long)sun50i_domain->dt, get_order(DT_SIZE));
        sun50i_domain->dt = NULL;
 
-       iommu_put_dma_cookie(domain);
-
        kfree(sun50i_domain);
 }