On Tue, Feb 02, 2021 at 07:39:51AM -0800, Ben Widawsky wrote:
On 21-02-01 23:16:26, Jonathan Cameron wrote:
Signed-off-by: Jonathan Cameron Jonathan.Cameron@huawei.com
include/standard-headers/linux/pci_regs.h | 33 ++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-)
diff --git a/include/standard-headers/linux/pci_regs.h b/include/standard-headers/linux/pci_regs.h index e709ae8235..7e852d3dd0 100644 --- a/include/standard-headers/linux/pci_regs.h +++ b/include/standard-headers/linux/pci_regs.h @@ -730,7 +730,8 @@ #define PCI_EXT_CAP_ID_DVSEC 0x23 /* Designated Vendor-Specific */ #define PCI_EXT_CAP_ID_DLF 0x25 /* Data Link Feature */ #define PCI_EXT_CAP_ID_PL_16GT 0x26 /* Physical Layer 16.0 GT/s */ -#define PCI_EXT_CAP_ID_MAX PCI_EXT_CAP_ID_PL_16GT +#define PCI_EXT_CAP_ID_DOE 0x2E /* Data Object Exchange */ +#define PCI_EXT_CAP_ID_MAX PCI_EXT_CAP_ID_DOE
#define PCI_EXT_CAP_DSN_SIZEOF 12 #define PCI_EXT_CAP_MCAST_ENDPOINT_SIZEOF 40 @@ -1092,4 +1093,34 @@ #define PCI_PL_16GT_LE_CTRL_USP_TX_PRESET_MASK 0x000000F0 #define PCI_PL_16GT_LE_CTRL_USP_TX_PRESET_SHIFT 4
+/* Data Object Exchange */ +#define PCI_DOE_CAP 0x04 +#define PCI_DOE_CAP_INT_SUPPORT 0x00000001 +#define PCI_DOE_CAP_INT_MSG_NUM 0x00000FFE
+#define PCI_DOE_CTRL 0x08 +#define PCI_DOE_CTRL_DOE_ABORT 0x00000001 +#define PCI_DOE_CTRL_DOE_INT_EN 0x00000002 +#define PCI_DOE_CTRL_DOE_GO 0x80000000
+#define PCI_DOE_STATUS 0x0c +#define PCI_DOE_STATUS_DOE_BUSY 0x00000001 +#define PCI_DOE_STATUS_INT_STATUS 0x00000002 +#define PCI_DOE_STATUS_DOE_ERROR 0x00000004 +#define PCI_DOE_STATUS_DATA_OBJECT_READY 0x80000000
+#define PCI_DOE_WRITE_MAILBOX 0x10 +#define PCI_DOE_READ_MAILBOX 0x14
+/* Data Object Format DOE ECN 6.xx.1 */ +#define PCI_DATA_OBJ_DW0_VID 0x0000ffff +#define PCI_DATA_OBJ_DW0_TYPE 0x00ff0000 +#define PCI_DATA_OBJ_DW1_LEN 0x0003ffff
+/* DOE Discover Data Object */ +#define PCI_DOE_DIS_OBJ_TYPE 0x1 +#define PCI_DOE_DIS_REQ_D0_DW0_INDEX 0x000000ff +#define PCI_DOE_DIS_RSP_DO_DW0_VID 0x0000ffff +#define PCI_DOE_DIS_RSP_D0_DW0_PROT 0x00ff0000 +#define PCI_DOE_DIS_RSP_D0_DW0_NEXT_INDEX 0xff000000 #endif /* LINUX_PCI_REGS_H */
I think a lot of these should have had _MASK at the end.
As for the accuracy of the values, lgtm.
just add them in the source file where they are used. standard-headers are over-written by scripts, adding your own macros there won't help.