Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris...
[linux/fpc-iii.git] / arch / powerpc / include / asm / device.h
blob38faeded7d595d506de55188ca8180c6e31ba67f
1 /*
2 * Arch specific extensions to struct device
4 * This file is released under the GPLv2
5 */
6 #ifndef _ASM_POWERPC_DEVICE_H
7 #define _ASM_POWERPC_DEVICE_H
9 struct dma_map_ops;
10 struct device_node;
13 * Arch extensions to struct device.
15 * When adding fields, consider macio_add_one_device in
16 * drivers/macintosh/macio_asic.c
18 struct dev_archdata {
19 /* DMA operations on that device */
20 struct dma_map_ops *dma_ops;
23 * When an iommu is in use, dma_data is used as a ptr to the base of the
24 * iommu_table. Otherwise, it is a simple numerical offset.
26 union {
27 dma_addr_t dma_offset;
28 void *iommu_table_base;
29 } dma_data;
31 #ifdef CONFIG_IOMMU_API
32 void *iommu_domain;
33 #endif
34 #ifdef CONFIG_SWIOTLB
35 dma_addr_t max_direct_dma_addr;
36 #endif
37 #ifdef CONFIG_EEH
38 struct eeh_dev *edev;
39 #endif
40 #ifdef CONFIG_FAIL_IOMMU
41 int fail_iommu;
42 #endif
45 struct pdev_archdata {
46 u64 dma_mask;
49 #define ARCH_HAS_DMA_GET_REQUIRED_MASK
51 #endif /* _ASM_POWERPC_DEVICE_H */