From b7a807b416eca20b54ae433734f1bad89d8a6409 Mon Sep 17 00:00:00 2001 From: Martin Mares Date: Tue, 25 Feb 2014 11:37:28 +0100 Subject: [PATCH] lspci: Decode ASPMOptComp bit in LnkCap register Patch by Robert Elliott from HP. --- lib/header.h | 1 + ls-caps.c | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/header.h b/lib/header.h index cb63d40..db85df1 100644 --- a/lib/header.h +++ b/lib/header.h @@ -778,6 +778,7 @@ #define PCI_EXP_LNKCAP_SURPRISE 0x80000 /* Surprise Down Error Reporting */ #define PCI_EXP_LNKCAP_DLLA 0x100000 /* Data Link Layer Active Reporting */ #define PCI_EXP_LNKCAP_LBNC 0x200000 /* Link Bandwidth Notification Capability */ +#define PCI_EXP_LNKCAP_AOC 0x400000 /* ASPM Optionality Compliance */ #define PCI_EXP_LNKCAP_PORT 0xff000000 /* Port Number */ #define PCI_EXP_LNKCTL 0x10 /* Link Control */ #define PCI_EXP_LNKCTL_ASPM 0x0003 /* ASPM Control */ diff --git a/ls-caps.c b/ls-caps.c index f192510..276a94d 100644 --- a/ls-caps.c +++ b/ls-caps.c @@ -765,11 +765,12 @@ static void cap_express_link(struct device *d, int where, int type) aspm_support((t & PCI_EXP_LNKCAP_ASPM) >> 10), latency_l0s((t & PCI_EXP_LNKCAP_L0S) >> 12), latency_l1((t & PCI_EXP_LNKCAP_L1) >> 15)); - printf("\t\t\tClockPM%c Surprise%c LLActRep%c BwNot%c\n", + printf("\t\t\tClockPM%c Surprise%c LLActRep%c BwNot%c ASPMOptComp%c\n", FLAG(t, PCI_EXP_LNKCAP_CLOCKPM), FLAG(t, PCI_EXP_LNKCAP_SURPRISE), FLAG(t, PCI_EXP_LNKCAP_DLLA), - FLAG(t, PCI_EXP_LNKCAP_LBNC)); + FLAG(t, PCI_EXP_LNKCAP_LBNC), + FLAG(t, PCI_EXP_LNKCAP_AOC)); w = get_conf_word(d, where + PCI_EXP_LNKCTL); printf("\t\tLnkCtl:\tASPM %s;", aspm_enabled(w & PCI_EXP_LNKCTL_ASPM)); -- 2.39.5