summaryrefslogtreecommitdiffstats
path: root/arch/ia64/include/asm/dma-mapping.h
diff options
context:
space:
mode:
authorFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>2009-01-05 15:36:06 +0100
committerIngo Molnar <mingo@elte.hu>2009-01-06 14:06:47 +0100
commite751ab3382de520475dabecb834791b6c1e3e742 (patch)
tree25354ea8be8f65aa5bd0e712ff161c74a3d239d6 /arch/ia64/include/asm/dma-mapping.h
parentMerge branches 'core/futexes', 'core/locking', 'core/rcu' and 'linus' into co... (diff)
downloadlinux-e751ab3382de520475dabecb834791b6c1e3e742.tar.xz
linux-e751ab3382de520475dabecb834791b6c1e3e742.zip
add map/unmap_single_attr and map/unmap_sg_attr to struct dma_mapping_ops
This adds map/unmap_single_attr and map/unmap_sg_attr to struct dma_mapping_ops. This enables us to move the dma operations in struct ia64_machine_vector to struct dma_mapping_ops. Note that we will remove map/unmap_sg and map/umap_single. This is a preparation of struct dma_mapping_ops unification. 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/include/asm/dma-mapping.h')
-rw-r--r--arch/ia64/include/asm/dma-mapping.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/arch/ia64/include/asm/dma-mapping.h b/arch/ia64/include/asm/dma-mapping.h
index bbab7e2b0fc9..eeb2aa36949a 100644
--- a/arch/ia64/include/asm/dma-mapping.h
+++ b/arch/ia64/include/asm/dma-mapping.h
@@ -20,6 +20,13 @@ struct dma_mapping_ops {
size_t size, int direction);
void (*unmap_single)(struct device *dev, dma_addr_t addr,
size_t size, int direction);
+ dma_addr_t (*map_single_attrs)(struct device *dev, void *cpu_addr,
+ size_t size, int direction,
+ struct dma_attrs *attrs);
+ void (*unmap_single_attrs)(struct device *dev,
+ dma_addr_t dma_addr,
+ size_t size, int direction,
+ struct dma_attrs *attrs);
void (*sync_single_for_cpu)(struct device *hwdev,
dma_addr_t dma_handle, size_t size,
int direction);
@@ -43,6 +50,13 @@ struct dma_mapping_ops {
void (*unmap_sg)(struct device *hwdev,
struct scatterlist *sg, int nents,
int direction);
+ int (*map_sg_attrs)(struct device *dev,
+ struct scatterlist *sg, int nents,
+ int direction, struct dma_attrs *attrs);
+ void (*unmap_sg_attrs)(struct device *dev,
+ struct scatterlist *sg, int nents,
+ int direction,
+ struct dma_attrs *attrs);
int (*dma_supported_op)(struct device *hwdev, u64 mask);
int is_phys;
};