mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-06-17 20:25:19 +00:00
PCI: Add support for PASID capability
Devices supporting Process Address Space Identifiers (PASIDs) can use an IOMMU to access multiple IO address spaces at the same time. A PCIe device indicates support for this feature by implementing the PASID capability. This patch adds support for the capability to the Linux kernel. Reviewed-by: Bjorn Helgaas <bhelgaas@google.com> Signed-off-by: Joerg Roedel <joerg.roedel@amd.com> Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
This commit is contained in:
parent
c320b976d7
commit
086ac11f64
4 changed files with 165 additions and 0 deletions
|
@ -93,4 +93,35 @@ static inline int pci_pri_status(struct pci_dev *pdev)
|
|||
}
|
||||
#endif /* CONFIG_PCI_PRI */
|
||||
|
||||
#ifdef CONFIG_PCI_PASID
|
||||
|
||||
extern int pci_enable_pasid(struct pci_dev *pdev, int features);
|
||||
extern void pci_disable_pasid(struct pci_dev *pdev);
|
||||
extern int pci_pasid_features(struct pci_dev *pdev);
|
||||
extern int pci_max_pasids(struct pci_dev *pdev);
|
||||
|
||||
#else /* CONFIG_PCI_PASID */
|
||||
|
||||
static inline int pci_enable_pasid(struct pci_dev *pdev, int features)
|
||||
{
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
static inline void pci_disable_pasid(struct pci_dev *pdev)
|
||||
{
|
||||
}
|
||||
|
||||
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*/
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue