#ifndef _SPARC64_DEV_VIOMMUVAR_H_
#define _SPARC64_DEV_VIOMMUVAR_H_
#include <sparc64/dev/iommuvar.h>
void viommu_init(char *, struct iommu_state *, int, u_int32_t);
int viommu_dvmamap_create(bus_dma_tag_t, bus_dma_tag_t,
struct iommu_state *, bus_size_t, int, bus_size_t, bus_size_t,
int, bus_dmamap_t *);
void viommu_dvmamap_destroy(bus_dma_tag_t, bus_dma_tag_t, bus_dmamap_t);
int viommu_dvmamap_load(bus_dma_tag_t, bus_dma_tag_t, bus_dmamap_t, void *,
bus_size_t, struct proc *, int);
void viommu_dvmamap_unload(bus_dma_tag_t, bus_dma_tag_t, bus_dmamap_t);
int viommu_dvmamap_load_raw(bus_dma_tag_t, bus_dma_tag_t, bus_dmamap_t,
bus_dma_segment_t *, int, bus_size_t, int);
void viommu_dvmamap_sync(bus_dma_tag_t, bus_dma_tag_t, bus_dmamap_t,
bus_addr_t, bus_size_t, int);
int viommu_dvmamem_alloc(bus_dma_tag_t, bus_dma_tag_t, bus_size_t,
bus_size_t, bus_size_t, bus_dma_segment_t *, int, int *, int);
void viommu_dvmamem_free(bus_dma_tag_t, bus_dma_tag_t, bus_dma_segment_t *,
int);
#endif