aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/linux/pci.h2
-rw-r--r--include/linux/pci_regs.h10
2 files changed, 12 insertions, 0 deletions
diff --git a/include/linux/pci.h b/include/linux/pci.h
index 72698d89e767..bd3e4a798c43 100644
--- a/include/linux/pci.h
+++ b/include/linux/pci.h
@@ -188,6 +188,7 @@ struct pci_cap_saved_state {
188struct pcie_link_state; 188struct pcie_link_state;
189struct pci_vpd; 189struct pci_vpd;
190struct pci_sriov; 190struct pci_sriov;
191struct pci_ats;
191 192
192/* 193/*
193 * The pci_dev structure is used to describe PCI devices. 194 * The pci_dev structure is used to describe PCI devices.
@@ -285,6 +286,7 @@ struct pci_dev {
285 struct pci_sriov *sriov; /* SR-IOV capability related */ 286 struct pci_sriov *sriov; /* SR-IOV capability related */
286 struct pci_dev *physfn; /* the PF this VF is associated with */ 287 struct pci_dev *physfn; /* the PF this VF is associated with */
287 }; 288 };
289 struct pci_ats *ats; /* Address Translation Service */
288#endif 290#endif
289}; 291};
290 292
diff --git a/include/linux/pci_regs.h b/include/linux/pci_regs.h
index e4d08c1b2e0b..c03189c56c7a 100644
--- a/include/linux/pci_regs.h
+++ b/include/linux/pci_regs.h
@@ -501,6 +501,7 @@
501#define PCI_EXT_CAP_ID_DSN 3 501#define PCI_EXT_CAP_ID_DSN 3
502#define PCI_EXT_CAP_ID_PWR 4 502#define PCI_EXT_CAP_ID_PWR 4
503#define PCI_EXT_CAP_ID_ARI 14 503#define PCI_EXT_CAP_ID_ARI 14
504#define PCI_EXT_CAP_ID_ATS 15
504#define PCI_EXT_CAP_ID_SRIOV 16 505#define PCI_EXT_CAP_ID_SRIOV 16
505 506
506/* Advanced Error Reporting */ 507/* Advanced Error Reporting */
@@ -619,6 +620,15 @@
619#define PCI_ARI_CTRL_ACS 0x0002 /* ACS Function Groups Enable */ 620#define PCI_ARI_CTRL_ACS 0x0002 /* ACS Function Groups Enable */
620#define PCI_ARI_CTRL_FG(x) (((x) >> 4) & 7) /* Function Group */ 621#define PCI_ARI_CTRL_FG(x) (((x) >> 4) & 7) /* Function Group */
621 622
623/* Address Translation Service */
624#define PCI_ATS_CAP 0x04 /* ATS Capability Register */
625#define PCI_ATS_CAP_QDEP(x) ((x) & 0x1f) /* Invalidate Queue Depth */
626#define PCI_ATS_MAX_QDEP 32 /* Max Invalidate Queue Depth */
627#define PCI_ATS_CTRL 0x06 /* ATS Control Register */
628#define PCI_ATS_CTRL_ENABLE 0x8000 /* ATS Enable */
629#define PCI_ATS_CTRL_STU(x) ((x) & 0x1f) /* Smallest Translation Unit */
630#define PCI_ATS_MIN_STU 12 /* shift of minimum STU block */
631
622/* Single Root I/O Virtualization */ 632/* Single Root I/O Virtualization */
623#define PCI_SRIOV_CAP 0x04 /* SR-IOV Capabilities */ 633#define PCI_SRIOV_CAP 0x04 /* SR-IOV Capabilities */
624#define PCI_SRIOV_CAP_VFM 0x01 /* VF Migration Capable */ 634#define PCI_SRIOV_CAP_VFM 0x01 /* VF Migration Capable */