Merge tag 'iommu-fixes-5.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git...
[linux-2.6-microblaze.git] / arch / arm / include / asm / device.h
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
8 struct dev_archdata {
9 #ifdef CONFIG_DMABOUNCE
10         struct dmabounce_device_info *dmabounce;
11 #endif
12 #ifdef CONFIG_IOMMU_API
13         void *iommu; /* private IOMMU data */
14 #endif
15 #ifdef CONFIG_ARM_DMA_USE_IOMMU
16         struct dma_iommu_mapping        *mapping;
17 #endif
18         unsigned int dma_coherent:1;
19         unsigned int dma_ops_setup:1;
20 };
21
22 struct omap_device;
23
24 struct pdev_archdata {
25 #ifdef CONFIG_ARCH_OMAP
26         struct omap_device *od;
27 #endif
28 };
29
30 #ifdef CONFIG_ARM_DMA_USE_IOMMU
31 #define to_dma_iommu_mapping(dev) ((dev)->archdata.mapping)
32 #else
33 #define to_dma_iommu_mapping(dev) NULL
34 #endif
35
36 #endif