1 /* SPDX-License-Identifier: GPL-2.0-only */
3 * Arch specific extensions to struct device
5 #ifndef _ASM_POWERPC_DEVICE_H
6 #define _ASM_POWERPC_DEVICE_H
15 * Arch extensions to struct device.
17 * When adding fields, consider macio_add_one_device in
18 * drivers/macintosh/macio_asic.c
22 * Set to %true if the dma_iommu_ops are requested to use a direct
23 * window instead of dynamically mapping memory.
25 bool iommu_bypass
: 1;
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 struct pci_dn
*pci_data
;
46 #ifdef CONFIG_FAIL_IOMMU
49 #ifdef CONFIG_CXL_BASE
50 struct cxl_context
*cxl_ctx
;
54 struct pdev_archdata
{
58 #endif /* _ASM_POWERPC_DEVICE_H */