|
@@ -1373,6 +1373,8 @@ void pci_request_acs(void);
|
|
#define PCI_VPD_LRDT_TAG_SIZE 3
|
|
#define PCI_VPD_LRDT_TAG_SIZE 3
|
|
#define PCI_VPD_SRDT_TAG_SIZE 1
|
|
#define PCI_VPD_SRDT_TAG_SIZE 1
|
|
|
|
|
|
|
|
+#define PCI_VPD_INFO_FLD_HDR_SIZE 3
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* pci_vpd_lrdt_size - Extracts the Large Resource Data Type length
|
|
* pci_vpd_lrdt_size - Extracts the Large Resource Data Type length
|
|
* @lrdt: Pointer to the beginning of the Large Resource Data Type tag
|
|
* @lrdt: Pointer to the beginning of the Large Resource Data Type tag
|
|
@@ -1395,6 +1397,17 @@ static inline u8 pci_vpd_srdt_size(const u8 *srdt)
|
|
return (*srdt) & PCI_VPD_SRDT_LEN_MASK;
|
|
return (*srdt) & PCI_VPD_SRDT_LEN_MASK;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+/**
|
|
|
|
+ * pci_vpd_info_field_size - Extracts the information field length
|
|
|
|
+ * @lrdt: Pointer to the beginning of an information field header
|
|
|
|
+ *
|
|
|
|
+ * Returns the extracted information field length.
|
|
|
|
+ */
|
|
|
|
+static inline u8 pci_vpd_info_field_size(const u8 *info_field)
|
|
|
|
+{
|
|
|
|
+ return info_field[2];
|
|
|
|
+}
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* pci_vpd_find_tag - Locates the Resource Data Type tag provided
|
|
* pci_vpd_find_tag - Locates the Resource Data Type tag provided
|
|
* @buf: Pointer to buffered vpd data
|
|
* @buf: Pointer to buffered vpd data
|