2 * Arch specific extensions to struct device
4 * This file is released under the GPLv2
6 #ifndef _ASM_POWERPC_DEVICE_H
7 #define _ASM_POWERPC_DEVICE_H
17 * Arch extensions to struct device.
19 * When adding fields, consider macio_add_one_device in
20 * drivers/macintosh/macio_asic.c
23 /* DMA operations on that device */
24 struct dma_map_ops
*dma_ops
;
27 * These two used to be a union. However, with the hybrid ops we need
28 * both so here we store both a DMA offset for direct mappings and
29 * an iommu_table for remapped DMA.
31 dma_addr_t dma_offset
;
34 struct iommu_table
*iommu_table_base
;
37 #ifdef CONFIG_IOMMU_API
41 dma_addr_t max_direct_dma_addr
;
44 struct pci_dn
*pci_data
;
49 #ifdef CONFIG_FAIL_IOMMU
52 #ifdef CONFIG_CXL_BASE
53 struct cxl_context
*cxl_ctx
;
57 struct pdev_archdata
{
61 #define ARCH_HAS_DMA_GET_REQUIRED_MASK
63 #endif /* _ASM_POWERPC_DEVICE_H */