From 1b3be4a12e7dd7504b502fb58929efec967b7fbf Mon Sep 17 00:00:00 2001 From: Abdul Lateef Attar Date: Fri, 9 Sep 2016 23:31:35 -0700 Subject: ShellPkg: pci -i -_e to print next capability According to PCI spec the next AER capability is relative to the beginning of PCI configuration space. Hence substract the base offset to get the next capability. "-_e" option is changed from TypeFlag to TypeValue, so that user can specify individual AER capability to print. e.g. pci 00 00 01 -i -_e Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Abdul Lateef Attar Reviewed-by: Jaben Carsey --- ShellPkg/Library/UefiShellDebug1CommandsLib/Pci.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'ShellPkg') diff --git a/ShellPkg/Library/UefiShellDebug1CommandsLib/Pci.c b/ShellPkg/Library/UefiShellDebug1CommandsLib/Pci.c index 337495e168..664c22bd82 100644 --- a/ShellPkg/Library/UefiShellDebug1CommandsLib/Pci.c +++ b/ShellPkg/Library/UefiShellDebug1CommandsLib/Pci.c @@ -2370,7 +2370,7 @@ PCI_CONFIG_SPACE *mConfigSpace = NULL; STATIC CONST SHELL_PARAM_ITEM ParamList[] = { {L"-s", TypeValue}, {L"-i", TypeFlag}, - {L"-_e", TypeFlag}, + {L"-_e", TypeValue}, {NULL, TypeMax} }; @@ -5914,7 +5914,7 @@ PciExplainPciExpress ( // Advance to the next item if it exists // if (ExtHdr->NextCapabilityOffset != 0) { - ExtHdr = (PCI_EXP_EXT_HDR*)((UINT8*)ExRegBuffer + ExtHdr->NextCapabilityOffset); + ExtHdr = (PCI_EXP_EXT_HDR*)((UINT8*)ExRegBuffer + ExtHdr->NextCapabilityOffset - EFI_PCIE_CAPABILITY_BASE_OFFSET); } else { break; } -- cgit v1.2.3