aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm
diff options
context:
space:
mode:
authorPrathyush K <prathyush.k@samsung.com>2013-01-04 06:22:42 -0500
committerMarek Szyprowski <m.szyprowski@samsung.com>2013-02-25 09:30:42 -0500
commit18177d12c0cee5646c7c2045ea90ddf882011c97 (patch)
tree9728ed0c398753643c27cb36476376551ba910e6 /arch/arm
parent6fe367580339a3adf77273d4366652665319bdeb (diff)
arm: dma mapping: export arm iommu functions
This patch adds EXPORT_SYMBOL_GPL calls to the three arm iommu functions - arm_iommu_create_mapping, arm_iommu_free_mapping and arm_iommu_attach_device. These three functions are arm specific wrapper functions for creating/freeing/using an iommu mapping and they are called by various drivers. If any of these drivers need to be built as dynamic modules, these functions need to be exported. Changelog v2: using EXPORT_SYMBOL_GPL as suggested by Marek. Signed-off-by: Prathyush K <prathyush.k@samsung.com> [m.szyprowski: extended with recently introduced EXPORT_SYMBOL_GPL(arm_iommu_detach_device)] Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/mm/dma-mapping.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/arm/mm/dma-mapping.c b/arch/arm/mm/dma-mapping.c
index 6563e3872659..6ab882a05050 100644
--- a/arch/arm/mm/dma-mapping.c
+++ b/arch/arm/mm/dma-mapping.c
@@ -1803,6 +1803,7 @@ err2:
1803err: 1803err:
1804 return ERR_PTR(err); 1804 return ERR_PTR(err);
1805} 1805}
1806EXPORT_SYMBOL_GPL(arm_iommu_create_mapping);
1806 1807
1807static void release_iommu_mapping(struct kref *kref) 1808static void release_iommu_mapping(struct kref *kref)
1808{ 1809{
@@ -1819,6 +1820,7 @@ void arm_iommu_release_mapping(struct dma_iommu_mapping *mapping)
1819 if (mapping) 1820 if (mapping)
1820 kref_put(&mapping->kref, release_iommu_mapping); 1821 kref_put(&mapping->kref, release_iommu_mapping);
1821} 1822}
1823EXPORT_SYMBOL_GPL(arm_iommu_release_mapping);
1822 1824
1823/** 1825/**
1824 * arm_iommu_attach_device 1826 * arm_iommu_attach_device
@@ -1847,6 +1849,7 @@ int arm_iommu_attach_device(struct device *dev,
1847 pr_debug("Attached IOMMU controller to %s device.\n", dev_name(dev)); 1849 pr_debug("Attached IOMMU controller to %s device.\n", dev_name(dev));
1848 return 0; 1850 return 0;
1849} 1851}
1852EXPORT_SYMBOL_GPL(arm_iommu_attach_device);
1850 1853
1851/** 1854/**
1852 * arm_iommu_detach_device 1855 * arm_iommu_detach_device
@@ -1872,5 +1875,6 @@ void arm_iommu_detach_device(struct device *dev)
1872 1875
1873 pr_debug("Detached IOMMU controller from %s device.\n", dev_name(dev)); 1876 pr_debug("Detached IOMMU controller from %s device.\n", dev_name(dev));
1874} 1877}
1878EXPORT_SYMBOL_GPL(arm_iommu_detach_device);
1875 1879
1876#endif 1880#endif