mirror of https://github.com/ipxe/ipxe.git
[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 <mcb30@ipxe.org>pull/34/merge
parent
bac3187439
commit
37897fbd40
|
@ -162,15 +162,11 @@ void dbg_efi_openers ( EFI_HANDLE handle, EFI_GUID *protocol ) {
|
||||||
* @v protocol Protocol GUID
|
* @v protocol Protocol GUID
|
||||||
*/
|
*/
|
||||||
void dbg_efi_protocol ( EFI_HANDLE handle, EFI_GUID *protocol ) {
|
void dbg_efi_protocol ( EFI_HANDLE handle, EFI_GUID *protocol ) {
|
||||||
EFI_BOOT_SERVICES *bs = efi_systab->BootServices;
|
|
||||||
VOID *interface;
|
VOID *interface;
|
||||||
EFI_STATUS efirc;
|
|
||||||
int rc;
|
int rc;
|
||||||
|
|
||||||
/* Get protocol instance */
|
/* Get protocol instance */
|
||||||
if ( ( efirc = bs->HandleProtocol ( handle, protocol,
|
if ( ( rc = efi_open ( handle, protocol, &interface ) ) != 0 ) {
|
||||||
&interface ) ) != 0 ) {
|
|
||||||
rc = -EEFI ( efirc );
|
|
||||||
printf ( "HANDLE %s could not identify %s: %s\n",
|
printf ( "HANDLE %s could not identify %s: %s\n",
|
||||||
efi_handle_name ( handle ),
|
efi_handle_name ( handle ),
|
||||||
efi_guid_ntoa ( protocol ), strerror ( rc ) );
|
efi_guid_ntoa ( protocol ), strerror ( rc ) );
|
||||||
|
|
|
@ -1000,10 +1000,8 @@ static int efi_file_path_claim ( struct efi_file_path *file ) {
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Locate device path protocol on this handle */
|
/* Locate device path protocol on this handle */
|
||||||
if ( ( ( efirc = bs->HandleProtocol ( handle,
|
if ( ( rc = efi_open ( handle, &efi_device_path_protocol_guid,
|
||||||
&efi_device_path_protocol_guid,
|
&old ) != 0 ) ) {
|
||||||
&old ) ) != 0 ) ) {
|
|
||||||
rc = -EEFI ( efirc );
|
|
||||||
DBGC ( file, "EFIFILE %s could not locate %s: %s\n",
|
DBGC ( file, "EFIFILE %s could not locate %s: %s\n",
|
||||||
efi_file_name ( &file->file ),
|
efi_file_name ( &file->file ),
|
||||||
efi_devpath_text ( file->path ), strerror ( rc ) );
|
efi_devpath_text ( file->path ), strerror ( rc ) );
|
||||||
|
|
Loading…
Reference in New Issue