From b2700160cc4f5ff7d64926ea55a214b5ac970cf5 Mon Sep 17 00:00:00 2001 From: Navdeep Parhar Date: Fri, 4 Nov 2022 12:22:11 -0700 Subject: [PATCH] pcireg.h: Add values for ACS PCIe Extended capability. These values come from section 7.7.11 ("ACS Extended Capability") of the PCI Express Base Specification Revision 6.0, dated 16 Dec 2021. MFC after: 1 week Sponsored by: Chelsio Communications Reviewed by: kib@ Differential Revision: https://reviews.freebsd.org/D37270 --- sys/dev/pci/pcireg.h | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/sys/dev/pci/pcireg.h b/sys/dev/pci/pcireg.h index d580ef88b60c..31cfc1503a57 100644 --- a/sys/dev/pci/pcireg.h +++ b/sys/dev/pci/pcireg.h @@ -1098,3 +1098,28 @@ #define PCIM_OSC_CTL_PCIE_PME 0x04 /* PCIe Native Power Mgt Events */ #define PCIM_OSC_CTL_PCIE_AER 0x08 /* PCIe Advanced Error Reporting */ #define PCIM_OSC_CTL_PCIE_CAP_STRUCT 0x10 /* Various Capability Structures */ + +/* Access Control Services (ACS) definitions */ +#define PCIR_ACS_CAP 0x4 +#define PCIM_ACS_SOURCE_VALIDATION 0x0001 +#define PCIM_ACS_TRANSLATION_BLOCKING 0x0002 +#define PCIM_ACS_P2P_REQ_REDIRECT 0x0004 +#define PCIM_ACS_P2P_CMP_REDIRECT 0x0008 +#define PCIM_ACS_P2P_UPSTREAM_FORWARDING 0x0010 +#define PCIM_ACS_P2P_EGRESS_CTL 0x0020 +#define PCIM_ACS_P2P_DIRECT_TRANSLATED 0x0040 +#define PCIM_ACS_ENHANCED_CAP 0x0080 +#define PCIM_ACS_EGRESS_CTL_VECTOR_SIZE 0xff00 +#define PCIR_ACS_CTL 0x6 +#define PCIM_ACS_SOURCE_VALIDATION_ENABLE 0x0001 +#define PCIM_ACS_TRANSLATION_BLOCKING_ENABLE 0x0002 +#define PCIM_ACS_P2P_REQ_REDIRECT_ENABLE 0x0004 +#define PCIM_ACS_P2P_CMP_REDIRECT_ENABLE 0x0008 +#define PCIM_ACS_P2P_UPSTREAM_FORWARDING_ENABLE 0x0010 +#define PCIM_ACS_P2P_EGRESS_CTL_ENABLE 0x0020 +#define PCIM_ACS_P2P_DIRECT_TRANSLATED_ENABLE 0x0040 +#define PCIM_ACS_IO_REQ_BLOCKING_ENABLE 0x0080 +#define PCIM_ACS_DSP_MEM_TGT_ACC_CTL 0x0300 +#define PCIM_ACS_USP_MEM_TGT_ACC_CTL 0x0c00 +#define PCIM_ACS_UNCLAIMED_REQ_REDIRECT_CTL 0x1000 +#define PCIR_ACS_EGRESS_CONTROL_VECTOR 0x8