mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-28 11:18:45 +07:00
fef2dd8b39
These interfaces: void pci_restore_pri_state(struct pci_dev *pdev); void pci_restore_pasid_state(struct pci_dev *pdev); are only used in drivers/pci and do not need to be seen by the rest of the kernel. Most them to drivers/pci/pci.h so they're private to the PCI subsystem. Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Reviewed-by: Joerg Roedel <jroedel@suse.de>
43 lines
1.4 KiB
C
43 lines
1.4 KiB
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
#ifndef LINUX_PCI_ATS_H
|
|
#define LINUX_PCI_ATS_H
|
|
|
|
#include <linux/pci.h>
|
|
|
|
#ifdef CONFIG_PCI_ATS
|
|
/* Address Translation Service */
|
|
int pci_enable_ats(struct pci_dev *dev, int ps);
|
|
void pci_disable_ats(struct pci_dev *dev);
|
|
int pci_ats_queue_depth(struct pci_dev *dev);
|
|
int pci_ats_page_aligned(struct pci_dev *dev);
|
|
#else /* CONFIG_PCI_ATS */
|
|
static inline int pci_enable_ats(struct pci_dev *d, int ps)
|
|
{ return -ENODEV; }
|
|
static inline void pci_disable_ats(struct pci_dev *d) { }
|
|
static inline int pci_ats_queue_depth(struct pci_dev *d)
|
|
{ return -ENODEV; }
|
|
static inline int pci_ats_page_aligned(struct pci_dev *dev)
|
|
{ return 0; }
|
|
#endif /* CONFIG_PCI_ATS */
|
|
|
|
#ifdef CONFIG_PCI_PRI
|
|
int pci_enable_pri(struct pci_dev *pdev, u32 reqs);
|
|
void pci_disable_pri(struct pci_dev *pdev);
|
|
int pci_reset_pri(struct pci_dev *pdev);
|
|
int pci_prg_resp_pasid_required(struct pci_dev *pdev);
|
|
#endif /* CONFIG_PCI_PRI */
|
|
|
|
#ifdef CONFIG_PCI_PASID
|
|
int pci_enable_pasid(struct pci_dev *pdev, int features);
|
|
void pci_disable_pasid(struct pci_dev *pdev);
|
|
int pci_pasid_features(struct pci_dev *pdev);
|
|
int pci_max_pasids(struct pci_dev *pdev);
|
|
#else /* CONFIG_PCI_PASID */
|
|
static inline int pci_pasid_features(struct pci_dev *pdev)
|
|
{ return -EINVAL; }
|
|
static inline int pci_max_pasids(struct pci_dev *pdev)
|
|
{ return -EINVAL; }
|
|
#endif /* CONFIG_PCI_PASID */
|
|
|
|
#endif /* LINUX_PCI_ATS_H */
|