1/* SPDX-License-Identifier: GPL-2.0-only */ 2/* 3 * Arch specific extensions to struct device 4 */ 5#ifndef ASMARM_DEVICE_H 6#define ASMARM_DEVICE_H 7 8struct dev_archdata { 9#ifdef CONFIG_DMABOUNCE 10 struct dmabounce_device_info *dmabounce; 11#endif 12#ifdef CONFIG_ARM_DMA_USE_IOMMU 13 struct dma_iommu_mapping *mapping; 14#endif 15 unsigned int dma_coherent:1; 16 unsigned int dma_ops_setup:1; 17}; 18 19struct omap_device; 20 21struct pdev_archdata { 22#ifdef CONFIG_ARCH_OMAP 23 struct omap_device *od; 24#endif 25}; 26 27#ifdef CONFIG_ARM_DMA_USE_IOMMU 28#define to_dma_iommu_mapping(dev) ((dev)->archdata.mapping) 29#else 30#define to_dma_iommu_mapping(dev) NULL 31#endif 32 33#endif 34