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#ifdef CONFIG_DMABOUNCE
11 struct dmabounce_device_info *dmabounce;
12#endif
13};
14
15struct pdev_archdata {
16};
17
18#endif
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#ifdef CONFIG_DMABOUNCE
11 struct dmabounce_device_info *dmabounce;
12#endif
13#ifdef CONFIG_IOMMU_API
14 void *iommu; /* private IOMMU data */
15#endif
16#ifdef CONFIG_ARM_DMA_USE_IOMMU
17 struct dma_iommu_mapping *mapping;
18#endif
19#ifdef CONFIG_XEN
20 const struct dma_map_ops *dev_dma_ops;
21#endif
22 unsigned int dma_coherent:1;
23 unsigned int dma_ops_setup:1;
24};
25
26struct omap_device;
27
28struct pdev_archdata {
29#ifdef CONFIG_ARCH_OMAP
30 struct omap_device *od;
31#endif
32};
33
34#ifdef CONFIG_ARM_DMA_USE_IOMMU
35#define to_dma_iommu_mapping(dev) ((dev)->archdata.mapping)
36#else
37#define to_dma_iommu_mapping(dev) NULL
38#endif
39
40#endif