summaryrefslogtreecommitdiff
path: root/MdeModulePkg/Core/Dxe/DxeMain/DxeMain.c
diff options
context:
space:
mode:
Diffstat (limited to 'MdeModulePkg/Core/Dxe/DxeMain/DxeMain.c')
-rw-r--r--MdeModulePkg/Core/Dxe/DxeMain/DxeMain.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/MdeModulePkg/Core/Dxe/DxeMain/DxeMain.c b/MdeModulePkg/Core/Dxe/DxeMain/DxeMain.c
index e1ba34a0e3..ed5a3c9e17 100644
--- a/MdeModulePkg/Core/Dxe/DxeMain/DxeMain.c
+++ b/MdeModulePkg/Core/Dxe/DxeMain/DxeMain.c
@@ -448,7 +448,17 @@ DxeMain (
//
// Assert if the Architectural Protocols are not present.
//
- ASSERT_EFI_ERROR (CoreAllEfiServicesAvailable ());
+ Status = CoreAllEfiServicesAvailable ();
+ if (EFI_ERROR(Status)) {
+ //
+ // Report Status code that some Architectural Protocols are not present.
+ //
+ REPORT_STATUS_CODE (
+ EFI_ERROR_CODE | EFI_ERROR_MAJOR,
+ (EFI_SOFTWARE_DXE_CORE | EFI_SW_DXE_CORE_EC_NO_ARCH)
+ );
+ }
+ ASSERT_EFI_ERROR (Status);
//
// Report Status code before transfer control to BDS