mirror of https://github.com/acidanthera/audk.git
IntelSiliconPkg VTdDxe: Report status code for VTd error
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1273 Current code only uses DEBUG() for VTd error. This patch updates to also report status code for VTd error. Test done: Created case that has VTd error and confirmed the error status code could be reported as expected. Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Rangasai V Chaganty <rangasai.v.chaganty@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
This commit is contained in:
parent
8c09f30010
commit
27bf6712b4
|
@ -28,6 +28,7 @@
|
||||||
#include <Library/CacheMaintenanceLib.h>
|
#include <Library/CacheMaintenanceLib.h>
|
||||||
#include <Library/PerformanceLib.h>
|
#include <Library/PerformanceLib.h>
|
||||||
#include <Library/PrintLib.h>
|
#include <Library/PrintLib.h>
|
||||||
|
#include <Library/ReportStatusCodeLib.h>
|
||||||
|
|
||||||
#include <Guid/EventGroup.h>
|
#include <Guid/EventGroup.h>
|
||||||
#include <Guid/Acpi.h>
|
#include <Guid/Acpi.h>
|
||||||
|
|
|
@ -60,6 +60,7 @@
|
||||||
CacheMaintenanceLib
|
CacheMaintenanceLib
|
||||||
PerformanceLib
|
PerformanceLib
|
||||||
PrintLib
|
PrintLib
|
||||||
|
ReportStatusCodeLib
|
||||||
|
|
||||||
[Guids]
|
[Guids]
|
||||||
gEfiEventExitBootServicesGuid ## CONSUMES ## Event
|
gEfiEventExitBootServicesGuid ## CONSUMES ## Event
|
||||||
|
@ -78,6 +79,7 @@
|
||||||
|
|
||||||
[Pcd]
|
[Pcd]
|
||||||
gIntelSiliconPkgTokenSpaceGuid.PcdVTdPolicyPropertyMask ## CONSUMES
|
gIntelSiliconPkgTokenSpaceGuid.PcdVTdPolicyPropertyMask ## CONSUMES
|
||||||
|
gIntelSiliconPkgTokenSpaceGuid.PcdErrorCodeVTdError ## CONSUMES
|
||||||
|
|
||||||
[Depex]
|
[Depex]
|
||||||
gEfiPciRootBridgeIoProtocolGuid
|
gEfiPciRootBridgeIoProtocolGuid
|
||||||
|
|
|
@ -545,6 +545,7 @@ DumpVtdIfError (
|
||||||
}
|
}
|
||||||
|
|
||||||
if (HasError) {
|
if (HasError) {
|
||||||
|
REPORT_STATUS_CODE (EFI_ERROR_CODE, PcdGet32 (PcdErrorCodeVTdError));
|
||||||
DEBUG((DEBUG_INFO, "\n#### ERROR ####\n"));
|
DEBUG((DEBUG_INFO, "\n#### ERROR ####\n"));
|
||||||
DumpVtdRegs (Num);
|
DumpVtdRegs (Num);
|
||||||
DEBUG((DEBUG_INFO, "#### ERROR ####\n\n"));
|
DEBUG((DEBUG_INFO, "#### ERROR ####\n\n"));
|
||||||
|
|
|
@ -47,6 +47,12 @@
|
||||||
[Protocols]
|
[Protocols]
|
||||||
gEdkiiPlatformVTdPolicyProtocolGuid = { 0x3d17e448, 0x466, 0x4e20, { 0x99, 0x9f, 0xb2, 0xe1, 0x34, 0x88, 0xee, 0x22 }}
|
gEdkiiPlatformVTdPolicyProtocolGuid = { 0x3d17e448, 0x466, 0x4e20, { 0x99, 0x9f, 0xb2, 0xe1, 0x34, 0x88, 0xee, 0x22 }}
|
||||||
|
|
||||||
|
[PcdsFixedAtBuild, PcdsPatchableInModule]
|
||||||
|
## Error code for VTd error.<BR><BR>
|
||||||
|
# EDKII_ERROR_CODE_VTD_ERROR = (EFI_IO_BUS_UNSPECIFIED | (EFI_OEM_SPECIFIC | 0x00000000)) = 0x02008000<BR>
|
||||||
|
# @Prompt Error code for VTd error.
|
||||||
|
gIntelSiliconPkgTokenSpaceGuid.PcdErrorCodeVTdError|0x02008000|UINT32|0x00000005
|
||||||
|
|
||||||
[PcdsFixedAtBuild, PcdsPatchableInModule, PcdsDynamic, PcdsDynamicEx]
|
[PcdsFixedAtBuild, PcdsPatchableInModule, PcdsDynamic, PcdsDynamicEx]
|
||||||
## This is the GUID of the FFS which contains the Graphics Video BIOS Table (VBT)
|
## This is the GUID of the FFS which contains the Graphics Video BIOS Table (VBT)
|
||||||
# The VBT content is stored as a RAW section which is consumed by GOP PEI/UEFI driver.
|
# The VBT content is stored as a RAW section which is consumed by GOP PEI/UEFI driver.
|
||||||
|
|
Loading…
Reference in New Issue