Loading...
1/*
2 * Arch specific extensions to struct device
3 *
4 * This file is released under the GPLv2
5 */
6#ifndef ASMARM_DEVICE_H
7#define ASMARM_DEVICE_H
8
9struct dev_archdata {
10 struct dma_map_ops *dma_ops;
11#ifdef CONFIG_DMABOUNCE
12 struct dmabounce_device_info *dmabounce;
13#endif
14#ifdef CONFIG_IOMMU_API
15 void *iommu; /* private IOMMU data */
16#endif
17#ifdef CONFIG_ARM_DMA_USE_IOMMU
18 struct dma_iommu_mapping *mapping;
19#endif
20};
21
22struct omap_device;
23
24struct pdev_archdata {
25#ifdef CONFIG_ARCH_OMAP
26 struct omap_device *od;
27#endif
28};
29
30#endif
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_ARM_DMA_USE_IOMMU
10 struct dma_iommu_mapping *mapping;
11#endif
12 unsigned int dma_ops_setup:1;
13};
14
15struct omap_device;
16
17struct pdev_archdata {
18#ifdef CONFIG_ARCH_OMAP
19 struct omap_device *od;
20#endif
21};
22
23#ifdef CONFIG_ARM_DMA_USE_IOMMU
24#define to_dma_iommu_mapping(dev) ((dev)->archdata.mapping)
25#else
26#define to_dma_iommu_mapping(dev) NULL
27#endif
28
29#endif