summaryrefslogtreecommitdiffstats
path: root/include/linux/pci_regs.h
diff options
context:
space:
mode:
authorBjorn Helgaas <bhelgaas@google.com>2012-07-13 14:30:21 -0600
committerBjorn Helgaas <bhelgaas@google.com>2012-08-22 13:47:28 -0600
commitdefb9446fe417f72855bc8bf97aa5d8af076bdf8 (patch)
tree156de2c73267bb7e299fa8d2fa2c20ef6d2cb487 /include/linux/pci_regs.h
parent44a9a36f6be43636ac2342c06d9feb60db77826a (diff)
PCI: Add Vendor-Specific Extended Capability header info
This adds the fields in the Vendor-Specific Header: ID, Rev, and Length. There may be multiple Vendor-Specific capabilities, so drivers should use the VSEC ID to identify the one of interest. Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Diffstat (limited to 'include/linux/pci_regs.h')
-rw-r--r--include/linux/pci_regs.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/include/linux/pci_regs.h b/include/linux/pci_regs.h
index 7fb75b14375..02448b1a090 100644
--- a/include/linux/pci_regs.h
+++ b/include/linux/pci_regs.h
@@ -677,6 +677,12 @@
#define PCI_PWR_CAP_BUDGET(x) ((x) & 1) /* Included in system budget */
#define PCI_EXT_CAP_PWR_SIZEOF 16
+/* Vendor-Specific (VSEC, PCI_EXT_CAP_ID_VNDR) */
+#define PCI_VNDR_HEADER 4 /* Vendor-Specific Header */
+#define PCI_VNDR_HEADER_ID(x) ((x) & 0xffff)
+#define PCI_VNDR_HEADER_REV(x) (((x) >> 16) & 0xf)
+#define PCI_VNDR_HEADER_LEN(x) (((x) >> 20) & 0xfff)
+
/*
* Hypertransport sub capability types
*