@ -800,22 +800,25 @@ static efi_status_t EFIAPI efi_reinstall_protocol_interface(void *handle,
/*
* Uninstall protocol interface .
*
* This is the function for internal calls . For the API implementation of the
* UninstallProtocolInterface service see func tion
* efi_uninstall_protocol_interface_ext .
* This function implements the UninstallProtocolInterface service .
* See the Unified Extensible Firmware Interface ( UEFI ) specifica tion
* for details .
*
* @ handle handle from which the protocol shall be removed
* @ protocol GUID of the protocol to be removed
* @ protocol_interface interface to be removed
* @ return status code
*/
static efi_status_t EFIAPI efi_uninstall_protocol_interface ( void * handle ,
const efi_guid_t * protocol , void * protocol_interface )
static efi_status_t EFIAPI efi_uninstall_protocol_interface (
void * handle , const efi_guid_t * protocol ,
void * protocol_interface )
{
struct list_head * lhandle ;
int i ;
efi_status_t r = EFI_NOT_FOUND ;
EFI_ENTRY ( " %p, %pUl, %p " , handle , protocol , protocol_interface ) ;
if ( ! handle | | ! protocol ) {
r = EFI_INVALID_PARAMETER ;
goto out ;
@ -847,28 +850,7 @@ static efi_status_t EFIAPI efi_uninstall_protocol_interface(void *handle,
}
out :
return r ;
}
/*
* Uninstall protocol interface .
*
* This function implements the UninstallProtocolInterface service .
* See the Unified Extensible Firmware Interface ( UEFI ) specification
* for details .
*
* @ handle handle from which the protocol shall be removed
* @ protocol GUID of the protocol to be removed
* @ protocol_interface interface to be removed
* @ return status code
*/
static efi_status_t EFIAPI efi_uninstall_protocol_interface_ext ( void * handle ,
const efi_guid_t * protocol , void * protocol_interface )
{
EFI_ENTRY ( " %p, %pUl, %p " , handle , protocol , protocol_interface ) ;
return EFI_EXIT ( efi_uninstall_protocol_interface ( handle , protocol ,
protocol_interface ) ) ;
return EFI_EXIT ( r ) ;
}
/*
@ -1781,8 +1763,8 @@ static efi_status_t EFIAPI efi_install_multiple_protocol_interfaces(
for ( ; i ; - - i ) {
protocol = va_arg ( argptr , efi_guid_t * ) ;
protocol_interface = va_arg ( argptr , void * ) ;
efi_uninstall_protocol_interface ( handle , protocol ,
protocol_interface ) ;
EFI_CALL ( efi_uninstall_protocol_interface ( handle , protocol ,
protocol_interface ) ) ;
}
va_end ( argptr ) ;
@ -1992,7 +1974,7 @@ static const struct efi_boot_services efi_boot_services = {
. check_event = efi_check_event ,
. install_protocol_interface = efi_install_protocol_interface ,
. reinstall_protocol_interface = efi_reinstall_protocol_interface ,
. uninstall_protocol_interface = efi_uninstall_protocol_interface_ext ,
. uninstall_protocol_interface = efi_uninstall_protocol_interface ,
. handle_protocol = efi_handle_protocol ,
. reserved = NULL ,
. register_protocol_notify = efi_register_protocol_notify ,