From 8dd52c949e131dc0663337f77b5651b79a6cb92b Mon Sep 17 00:00:00 2001 From: Liming Gao Date: Fri, 17 Nov 2023 18:00:12 +0800 Subject: Revert "RedfishPkg: RedfishDiscoverDxe: Fix issue if IPv4 installed later" This reverts commit 06b27ccb90302bffbb34e4ddf31a6e2843dd20f5. Signed-off-by: Liming Gao --- RedfishPkg/RedfishDiscoverDxe/RedfishDiscoverDxe.c | 31 +++++++++++----------- 1 file changed, 15 insertions(+), 16 deletions(-) (limited to 'RedfishPkg') diff --git a/RedfishPkg/RedfishDiscoverDxe/RedfishDiscoverDxe.c b/RedfishPkg/RedfishDiscoverDxe/RedfishDiscoverDxe.c index 0f622e05a9..23da3b968f 100644 --- a/RedfishPkg/RedfishDiscoverDxe/RedfishDiscoverDxe.c +++ b/RedfishPkg/RedfishDiscoverDxe/RedfishDiscoverDxe.c @@ -1547,26 +1547,25 @@ TestForRequiredProtocols ( ControllerHandle, EFI_OPEN_PROTOCOL_TEST_PROTOCOL ); - if (EFI_ERROR (Status)) { - return EFI_UNSUPPORTED; - } - - Status = gBS->OpenProtocol ( - ControllerHandle, - gRequiredProtocol[Index].DiscoveredProtocolGuid, - (VOID **)&Id, - This->DriverBindingHandle, - ControllerHandle, - EFI_OPEN_PROTOCOL_GET_PROTOCOL - ); if (!EFI_ERROR (Status)) { - // Already installed - return EFI_UNSUPPORTED; + Status = gBS->OpenProtocol ( + ControllerHandle, + gRequiredProtocol[Index].DiscoveredProtocolGuid, + (VOID **)&Id, + This->DriverBindingHandle, + ControllerHandle, + EFI_OPEN_PROTOCOL_GET_PROTOCOL + ); + if (EFI_ERROR (Status)) { + if (Index == ListCount - 1) { + DEBUG ((DEBUG_INFO, "%a: all required protocols are found on this controller handle: %p.\n", __func__, ControllerHandle)); + return EFI_SUCCESS; + } + } } } - DEBUG ((DEBUG_MANAGEABILITY, "%a: all required protocols are found on this controller handle: %p.\n", __func__, ControllerHandle)); - return EFI_SUCCESS; + return EFI_UNSUPPORTED; } /** -- cgit v1.2.3