/* * Arch specific extensions to struct device * * This file is released under the GPLv2 */ #ifndef ASMARM_DEVICE_H #define ASMARM_DEVICE_H struct dev_archdata { struct dma_map_ops *dma_ops; #ifdef CONFIG_DMABOUNCE struct dmabounce_device_info *dmabounce; #endif #ifdef CONFIG_IOMMU_API void *iommu; /* private IOMMU data */ #endif #ifdef CONFIG_ARM_DMA_USE_IOMMU struct dma_iommu_mapping *mapping; #endif }; struct omap_device; struct pdev_archdata { #ifdef CONFIG_ARCH_OMAP struct omap_device *od; #endif u64 dma_mask; }; #ifdef CONFIG_ARM_DMA_USE_IOMMU #define to_dma_iommu_mapping(dev) ((dev)->archdata.mapping) #else #define to_dma_iommu_mapping(dev) NULL #endif #endif