Linux-libre 4.14.145-gnu
[librecmc/linux-libre.git] / arch / x86 / include / asm / pci_64.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef _ASM_X86_PCI_64_H
3 #define _ASM_X86_PCI_64_H
4
5 #ifdef __KERNEL__
6
7 #ifdef CONFIG_CALGARY_IOMMU
8 static inline void *pci_iommu(struct pci_bus *bus)
9 {
10         struct pci_sysdata *sd = bus->sysdata;
11         return sd->iommu;
12 }
13
14 static inline void set_pci_iommu(struct pci_bus *bus, void *val)
15 {
16         struct pci_sysdata *sd = bus->sysdata;
17         sd->iommu = val;
18 }
19 #endif /* CONFIG_CALGARY_IOMMU */
20
21 extern int (*pci_config_read)(int seg, int bus, int dev, int fn,
22                               int reg, int len, u32 *value);
23 extern int (*pci_config_write)(int seg, int bus, int dev, int fn,
24                                int reg, int len, u32 value);
25
26 #endif /* __KERNEL__ */
27
28 #endif /* _ASM_X86_PCI_64_H */