From 86e6948cfbbe802aced7b7f3c6190ac0726c8725 Mon Sep 17 00:00:00 2001 From: Zhiguang Liu Date: Thu, 17 Jun 2021 09:20:57 +0800 Subject: [PATCH] UefiPayloadPkg: Remove assert when reserve MMIO/IO resource for devices Some boot loader may already reserve MMIO/IO resource for IOAPIC and HPET, so remove the assert when reserve MMIO/IO resource for IOAPIC and HPET Cc: Maurice Ma Cc: Guo Dong Cc: Benjamin You Reviewed-by: Guo Dong Signed-off-by: Zhiguang Liu --- UefiPayloadPkg/BlSupportDxe/BlSupportDxe.c | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/UefiPayloadPkg/BlSupportDxe/BlSupportDxe.c b/UefiPayloadPkg/BlSupportDxe/BlSupportDxe.c index ffd3427fb3..04e968a232 100644 --- a/UefiPayloadPkg/BlSupportDxe/BlSupportDxe.c +++ b/UefiPayloadPkg/BlSupportDxe/BlSupportDxe.c @@ -41,13 +41,12 @@ ReserveResourceInGcd ( ); if (EFI_ERROR (Status)) { DEBUG (( - DEBUG_ERROR, + DEBUG_WARN, "Failed to add memory space :0x%lx 0x%lx\n", BaseAddress, Length )); } - ASSERT_EFI_ERROR (Status); Status = gDS->AllocateMemorySpace ( EfiGcdAllocateAddress, GcdType, @@ -57,14 +56,20 @@ ReserveResourceInGcd ( ImageHandle, NULL ); - ASSERT_EFI_ERROR (Status); } else { Status = gDS->AddIoSpace ( GcdType, BaseAddress, Length ); - ASSERT_EFI_ERROR (Status); + if (EFI_ERROR (Status)) { + DEBUG (( + DEBUG_WARN, + "Failed to add IO space :0x%lx 0x%lx\n", + BaseAddress, + Length + )); + } Status = gDS->AllocateIoSpace ( EfiGcdAllocateAddress, GcdType, @@ -74,7 +79,6 @@ ReserveResourceInGcd ( ImageHandle, NULL ); - ASSERT_EFI_ERROR (Status); } return Status; } @@ -106,11 +110,9 @@ BlDxeEntryPoint ( // // Report MMIO/IO Resources // - Status = ReserveResourceInGcd (TRUE, EfiGcdMemoryTypeMemoryMappedIo, 0xFEC00000, SIZE_4KB, 0, ImageHandle); // IOAPIC - ASSERT_EFI_ERROR (Status); + ReserveResourceInGcd (TRUE, EfiGcdMemoryTypeMemoryMappedIo, 0xFEC00000, SIZE_4KB, 0, ImageHandle); // IOAPIC - Status = ReserveResourceInGcd (TRUE, EfiGcdMemoryTypeMemoryMappedIo, 0xFED00000, SIZE_1KB, 0, ImageHandle); // HPET - ASSERT_EFI_ERROR (Status); + ReserveResourceInGcd (TRUE, EfiGcdMemoryTypeMemoryMappedIo, 0xFED00000, SIZE_1KB, 0, ImageHandle); // HPET // // Find the frame buffer information and update PCDs