diff options
author | FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> | 2009-01-05 23:36:07 +0900 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-01-06 14:06:47 +0100 |
commit | 0e9cbb9ba874f9466faf82931465f00ebe4bb18c (patch) | |
tree | e83466bc61be53da291b2499ae2d7d0a99ec9316 /arch/ia64 | |
parent | e751ab3382de520475dabecb834791b6c1e3e742 (diff) | |
download | kernel_samsung_espresso10-0e9cbb9ba874f9466faf82931465f00ebe4bb18c.zip kernel_samsung_espresso10-0e9cbb9ba874f9466faf82931465f00ebe4bb18c.tar.gz kernel_samsung_espresso10-0e9cbb9ba874f9466faf82931465f00ebe4bb18c.tar.bz2 |
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')
-rw-r--r-- | arch/ia64/hp/common/sba_iommu.c | 16 |
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 d98f0f4..655b9a1 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, +}; |