1 #ifndef _ASM_IA64_MACHVEC_HPZX1_SWIOTLB_h 2 #define _ASM_IA64_MACHVEC_HPZX1_SWIOTLB_h 3 4 extern ia64_mv_setup_t dig_setup; 5 extern ia64_mv_dma_alloc_coherent hwsw_alloc_coherent; 6 extern ia64_mv_dma_free_coherent hwsw_free_coherent; 7 extern ia64_mv_dma_map_single_attrs hwsw_map_single_attrs; 8 extern ia64_mv_dma_unmap_single_attrs hwsw_unmap_single_attrs; 9 extern ia64_mv_dma_map_sg_attrs hwsw_map_sg_attrs; 10 extern ia64_mv_dma_unmap_sg_attrs hwsw_unmap_sg_attrs; 11 extern ia64_mv_dma_supported hwsw_dma_supported; 12 extern ia64_mv_dma_mapping_error hwsw_dma_mapping_error; 13 extern ia64_mv_dma_sync_single_for_cpu hwsw_sync_single_for_cpu; 14 extern ia64_mv_dma_sync_sg_for_cpu hwsw_sync_sg_for_cpu; 15 extern ia64_mv_dma_sync_single_for_device hwsw_sync_single_for_device; 16 extern 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_attrs hwsw_map_single_attrs 32 #define platform_dma_unmap_single_attrs hwsw_unmap_single_attrs 33 #define platform_dma_map_sg_attrs hwsw_map_sg_attrs 34 #define platform_dma_unmap_sg_attrs hwsw_unmap_sg_attrs 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