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