1#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_alloc_coherent hwsw_alloc_coherent; 6extern ia64_mv_dma_free_coherent hwsw_free_coherent; 7extern ia64_mv_dma_map_single hwsw_map_single; 8extern ia64_mv_dma_unmap_single hwsw_unmap_single; 9extern ia64_mv_dma_map_sg hwsw_map_sg; 10extern ia64_mv_dma_unmap_sg hwsw_unmap_sg; 11extern ia64_mv_dma_supported hwsw_dma_supported; 12extern ia64_mv_dma_mapping_error hwsw_dma_mapping_error; 13extern ia64_mv_dma_sync_single_for_cpu hwsw_sync_single_for_cpu; 14extern ia64_mv_dma_sync_sg_for_cpu hwsw_sync_sg_for_cpu; 15extern ia64_mv_dma_sync_single_for_device hwsw_sync_single_for_device; 16extern ia64_mv_dma_sync_sg_for_device hwsw_sync_sg_for_device; 17 18/* 19 * This stuff has dual use! 20 * 21 * For a generic kernel, the macros are used to initialize the 22 * platform's machvec structure. When compiling a non-generic kernel, 23 * the macros are used directly. 24 */ 25#define platform_name "hpzx1_swiotlb" 26 27#define platform_setup dig_setup 28#define platform_dma_init machvec_noop 29#define platform_dma_alloc_coherent hwsw_alloc_coherent 30#define platform_dma_free_coherent hwsw_free_coherent 31#define platform_dma_map_single hwsw_map_single 32#define platform_dma_unmap_single hwsw_unmap_single 33#define platform_dma_map_sg hwsw_map_sg 34#define platform_dma_unmap_sg hwsw_unmap_sg 35#define platform_dma_supported hwsw_dma_supported 36#define platform_dma_mapping_error hwsw_dma_mapping_error 37#define platform_dma_sync_single_for_cpu hwsw_sync_single_for_cpu 38#define platform_dma_sync_sg_for_cpu hwsw_sync_sg_for_cpu 39#define platform_dma_sync_single_for_device hwsw_sync_single_for_device 40#define platform_dma_sync_sg_for_device hwsw_sync_sg_for_device 41 42#endif /* _ASM_IA64_MACHVEC_HPZX1_SWIOTLB_h */ 43