aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBjorn Helgaas <bhelgaas@google.com>2023-10-18 11:08:30 -0500
committerMartin Mares <mj@ucw.cz>2023-10-18 20:57:05 +0200
commit3746111d5be2db9d78fde0c3af14dde50b89a2fa (patch)
treef34d9a76fa7e286b4c4ddced5d89dfed8efcd7f4
parentba06b2f5bdd764a2534e1194acaf7dc3cf696c02 (diff)
downloadpciutils-3746111d5be2db9d78fde0c3af14dde50b89a2fa.tar.gz
lspci: Decode PCIe DevCtl2 ID-Based Ordering Enables
Decode the PCIe DevCtl2 ID-Based Ordering Enable bits. Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
-rw-r--r--lib/header.h2
-rw-r--r--ls-caps.c4
2 files changed, 5 insertions, 1 deletions
diff --git a/lib/header.h b/lib/header.h
index 57ef0ae..5065465 100644
--- a/lib/header.h
+++ b/lib/header.h
@@ -903,6 +903,8 @@
#define PCI_EXP_DEVCTL2_ARI 0x0020 /* ARI Forwarding */
#define PCI_EXP_DEVCTL2_ATOMICOP_REQUESTER_EN 0x0040 /* AtomicOp RequesterEnable */
#define PCI_EXP_DEVCTL2_ATOMICOP_EGRESS_BLOCK 0x0080 /* AtomicOp Egress Blocking */
+#define PCI_EXP_DEVCTL2_IDO_REQ_EN 0x0100 /* Allow IDO for requests */
+#define PCI_EXP_DEVCTL2_IDO_CMP_EN 0x0200 /* Allow IDO for completions */
#define PCI_EXP_DEVCTL2_LTR 0x0400 /* LTR enabled */
#define PCI_EXP_DEVCTL2_10BIT_TAG_REQ 0x1000 /* 10 Bit Tag Requester enabled */
#define PCI_EXP_DEVCTL2_OBFF(x) (((x) >> 13) & 3) /* OBFF enabled */
diff --git a/ls-caps.c b/ls-caps.c
index beb7446..0c7bef9 100644
--- a/ls-caps.c
+++ b/ls-caps.c
@@ -1173,7 +1173,9 @@ static void cap_express_dev2(struct device *d, int where, int type)
printf(" EgressBlck%c", FLAG(w, PCI_EXP_DEVCTL2_ATOMICOP_EGRESS_BLOCK));
printf("\n");
}
- printf("\t\t\t LTR%c 10BitTagReq%c OBFF %s\n",
+ printf("\t\t\t IDOReq%c IDOCompl%c LTR%c 10BitTagReq%c OBFF %s\n",
+ FLAG(w, PCI_EXP_DEVCTL2_IDO_REQ_EN),
+ FLAG(w, PCI_EXP_DEVCTL2_IDO_CMP_EN),
FLAG(w, PCI_EXP_DEVCTL2_LTR),
FLAG(w, PCI_EXP_DEVCTL2_10BIT_TAG_REQ),
cap_express_devctl2_obff(PCI_EXP_DEVCTL2_OBFF(w)));