summaryrefslogtreecommitdiffstats
path: root/arch/ia64/hp
diff options
context:
space:
mode:
authorFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>2009-01-05 23:36:07 +0900
committerIngo Molnar <mingo@elte.hu>2009-01-06 14:06:47 +0100
commit0e9cbb9ba874f9466faf82931465f00ebe4bb18c (patch)
treee83466bc61be53da291b2499ae2d7d0a99ec9316 /arch/ia64/hp
parente751ab3382de520475dabecb834791b6c1e3e742 (diff)
downloadtalos-op-linux-0e9cbb9ba874f9466faf82931465f00ebe4bb18c.tar.gz
talos-op-linux-0e9cbb9ba874f9466faf82931465f00ebe4bb18c.zip
add dma_mapping_ops for SBA IOMMU
This is for IA64_HP_ZX1. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Acked-by: Tony Luck <tony.luck@intel.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/ia64/hp')
-rw-r--r--arch/ia64/hp/common/sba_iommu.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/arch/ia64/hp/common/sba_iommu.c b/arch/ia64/hp/common/sba_iommu.c
index d98f0f4ff83f..655b9a17db93 100644
--- a/arch/ia64/hp/common/sba_iommu.c
+++ b/arch/ia64/hp/common/sba_iommu.c
@@ -36,6 +36,7 @@
#include <linux/bitops.h> /* hweight64() */
#include <linux/crash_dump.h>
#include <linux/iommu-helper.h>
+#include <linux/dma-mapping.h>
#include <asm/delay.h> /* ia64_get_itc() */
#include <asm/io.h>
@@ -2180,3 +2181,18 @@ EXPORT_SYMBOL(sba_dma_mapping_error);
EXPORT_SYMBOL(sba_dma_supported);
EXPORT_SYMBOL(sba_alloc_coherent);
EXPORT_SYMBOL(sba_free_coherent);
+
+struct dma_mapping_ops sba_dma_ops = {
+ .alloc_coherent = sba_alloc_coherent,
+ .free_coherent = sba_free_coherent,
+ .map_single_attrs = sba_map_single_attrs,
+ .unmap_single_attrs = sba_unmap_single_attrs,
+ .map_sg_attrs = sba_map_sg_attrs,
+ .unmap_sg_attrs = sba_unmap_sg_attrs,
+ .sync_single_for_cpu = machvec_dma_sync_single,
+ .sync_sg_for_cpu = machvec_dma_sync_sg,
+ .sync_single_for_device = machvec_dma_sync_single,
+ .sync_sg_for_device = machvec_dma_sync_sg,
+ .dma_supported_op = sba_dma_supported,
+ .mapping_error = sba_dma_mapping_error,
+};
OpenPOWER on IntegriCloud