blob: 9924b1b00a6c6308603489f05811d24f269ce01c [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#ifndef _ASM_IA64_MACHVEC_HPZX1_SWIOTLB_h
2#define _ASM_IA64_MACHVEC_HPZX1_SWIOTLB_h
3
4extern ia64_mv_setup_t dig_setup;
5extern ia64_mv_dma_init hwsw_init;
6extern ia64_mv_dma_alloc_coherent hwsw_alloc_coherent;
7extern ia64_mv_dma_free_coherent hwsw_free_coherent;
8extern ia64_mv_dma_map_single hwsw_map_single;
9extern ia64_mv_dma_unmap_single hwsw_unmap_single;
10extern ia64_mv_dma_map_sg hwsw_map_sg;
11extern ia64_mv_dma_unmap_sg hwsw_unmap_sg;
12extern ia64_mv_dma_supported hwsw_dma_supported;
13extern ia64_mv_dma_mapping_error hwsw_dma_mapping_error;
14extern ia64_mv_dma_sync_single_for_cpu hwsw_sync_single_for_cpu;
15extern ia64_mv_dma_sync_sg_for_cpu hwsw_sync_sg_for_cpu;
16extern ia64_mv_dma_sync_single_for_device hwsw_sync_single_for_device;
17extern ia64_mv_dma_sync_sg_for_device hwsw_sync_sg_for_device;
18
19/*
20 * This stuff has dual use!
21 *
22 * For a generic kernel, the macros are used to initialize the
23 * platform's machvec structure. When compiling a non-generic kernel,
24 * the macros are used directly.
25 */
26#define platform_name "hpzx1_swiotlb"
27
28#define platform_setup dig_setup
29#define platform_dma_init hwsw_init
30#define platform_dma_alloc_coherent hwsw_alloc_coherent
31#define platform_dma_free_coherent hwsw_free_coherent
32#define platform_dma_map_single hwsw_map_single
33#define platform_dma_unmap_single hwsw_unmap_single
34#define platform_dma_map_sg hwsw_map_sg
35#define platform_dma_unmap_sg hwsw_unmap_sg
36#define platform_dma_supported hwsw_dma_supported
37#define platform_dma_mapping_error hwsw_dma_mapping_error
38#define platform_dma_sync_single_for_cpu hwsw_sync_single_for_cpu
39#define platform_dma_sync_sg_for_cpu hwsw_sync_sg_for_cpu
40#define platform_dma_sync_single_for_device hwsw_sync_single_for_device
41#define platform_dma_sync_sg_for_device hwsw_sync_sg_for_device
42
43#endif /* _ASM_IA64_MACHVEC_HPZX1_SWIOTLB_h */