From 37897fbd401b9773f3d8a338564eff67b124e2f7 Mon Sep 17 00:00:00 2001 From: Michael Brown Date: Mon, 24 Mar 2025 14:22:54 +0000 Subject: [PATCH] [efi] Eliminate uses of HandleProtocol() It is now simpler to use efi_open() than to use HandleProtocol() to obtain an ephemeral protocol instance. Remove all remaining uses of HandleProtocol() to simplify the code. Signed-off-by: Michael Brown --- src/interface/efi/efi_debug.c | 6 +----- src/interface/efi/efi_file.c | 6 ++---- 2 files changed, 3 insertions(+), 9 deletions(-) diff --git a/src/interface/efi/efi_debug.c b/src/interface/efi/efi_debug.c index ef650d989..fd4997ccc 100644 --- a/src/interface/efi/efi_debug.c +++ b/src/interface/efi/efi_debug.c @@ -162,15 +162,11 @@ void dbg_efi_openers ( EFI_HANDLE handle, EFI_GUID *protocol ) { * @v protocol Protocol GUID */ void dbg_efi_protocol ( EFI_HANDLE handle, EFI_GUID *protocol ) { - EFI_BOOT_SERVICES *bs = efi_systab->BootServices; VOID *interface; - EFI_STATUS efirc; int rc; /* Get protocol instance */ - if ( ( efirc = bs->HandleProtocol ( handle, protocol, - &interface ) ) != 0 ) { - rc = -EEFI ( efirc ); + if ( ( rc = efi_open ( handle, protocol, &interface ) ) != 0 ) { printf ( "HANDLE %s could not identify %s: %s\n", efi_handle_name ( handle ), efi_guid_ntoa ( protocol ), strerror ( rc ) ); diff --git a/src/interface/efi/efi_file.c b/src/interface/efi/efi_file.c index f31f2fe3b..d8b9f819c 100644 --- a/src/interface/efi/efi_file.c +++ b/src/interface/efi/efi_file.c @@ -1000,10 +1000,8 @@ static int efi_file_path_claim ( struct efi_file_path *file ) { } /* Locate device path protocol on this handle */ - if ( ( ( efirc = bs->HandleProtocol ( handle, - &efi_device_path_protocol_guid, - &old ) ) != 0 ) ) { - rc = -EEFI ( efirc ); + if ( ( rc = efi_open ( handle, &efi_device_path_protocol_guid, + &old ) != 0 ) ) { DBGC ( file, "EFIFILE %s could not locate %s: %s\n", efi_file_name ( &file->file ), efi_devpath_text ( file->path ), strerror ( rc ) );