2006-11-11 06:18:39 +00:00
|
|
|
/*
|
|
|
|
* Arch specific extensions to struct device
|
|
|
|
*
|
|
|
|
* This file is released under the GPLv2
|
|
|
|
*/
|
2007-02-12 10:28:24 +00:00
|
|
|
#ifndef ASMARM_DEVICE_H
|
|
|
|
#define ASMARM_DEVICE_H
|
2006-11-11 06:18:39 +00:00
|
|
|
|
2007-02-12 10:28:24 +00:00
|
|
|
struct dev_archdata {
|
2012-02-10 18:55:20 +00:00
|
|
|
struct dma_map_ops *dma_ops;
|
2007-02-12 10:28:24 +00:00
|
|
|
#ifdef CONFIG_DMABOUNCE
|
|
|
|
struct dmabounce_device_info *dmabounce;
|
|
|
|
#endif
|
2011-10-13 11:53:18 +00:00
|
|
|
#ifdef CONFIG_IOMMU_API
|
|
|
|
void *iommu; /* private IOMMU data */
|
|
|
|
#endif
|
2012-05-16 13:48:21 +00:00
|
|
|
#ifdef CONFIG_ARM_DMA_USE_IOMMU
|
|
|
|
struct dma_iommu_mapping *mapping;
|
|
|
|
#endif
|
2007-02-12 10:28:24 +00:00
|
|
|
};
|
|
|
|
|
2011-09-06 20:04:10 +00:00
|
|
|
struct omap_device;
|
|
|
|
|
2009-07-08 11:21:31 +00:00
|
|
|
struct pdev_archdata {
|
2011-09-06 20:04:10 +00:00
|
|
|
#ifdef CONFIG_ARCH_OMAP
|
|
|
|
struct omap_device *od;
|
|
|
|
#endif
|
2009-07-08 11:21:31 +00:00
|
|
|
};
|
|
|
|
|
2013-01-24 13:16:56 +00:00
|
|
|
#ifdef CONFIG_ARM_DMA_USE_IOMMU
|
|
|
|
#define to_dma_iommu_mapping(dev) ((dev)->archdata.mapping)
|
|
|
|
#else
|
|
|
|
#define to_dma_iommu_mapping(dev) NULL
|
|
|
|
#endif
|
|
|
|
|
2007-02-12 10:28:24 +00:00
|
|
|
#endif
|