53 if ( (
rc =
efi_open ( service, binding, &sb ) ) != 0 ) {
54 DBGC ( service,
"EFISVC %s cannot open %s binding: %s\n",
63 DBGC ( service,
"EFISVC %s could not create %s child: %s\n",
69 DBGC ( service,
"EFISVC %s created %s child ",
89 DBGC ( service,
"EFISVC %s removing %s child ",
94 if ( (
rc =
efi_open ( service, binding, &sb ) ) != 0 ) {
95 DBGC ( service,
"EFISVC %s cannot open %s binding: %s\n",
104 DBGC ( service,
"EFISVC %s could not destroy %s child ",
106 DBGC ( service,
"%s: %s\n",
struct arbelprm_rc_send_wqe rc
#define EEFI(efirc)
Convert an EFI status code to an iPXE status code.
128 bit buffer containing a unique identifier value.
int efi_service_del(EFI_HANDLE service, EFI_GUID *binding, EFI_HANDLE handle)
Remove service from child handle.
EFI_SERVICE_BINDING_CREATE_CHILD CreateChild
EFI_SERVICE_BINDING_DESTROY_CHILD DestroyChild
UEFI Service Binding Protocol is defined in UEFI specification.
const char * efi_handle_name(EFI_HANDLE handle)
Get name of an EFI handle.
char * strerror(int errno)
Retrieve string representation of error number.
FILE_LICENCE(GPL2_OR_LATER_OR_UBDL)
#define efi_open(handle, protocol, interface)
Open protocol for ephemeral use.
The EFI_SERVICE_BINDING_PROTOCOL provides member functions to create and destroy child handles.
const char * efi_guid_ntoa(CONST EFI_GUID *guid)
Convert GUID to a printable string.
int efi_service_add(EFI_HANDLE service, EFI_GUID *binding, EFI_HANDLE *handle)
Add service to child handle.
RETURN_STATUS EFI_STATUS
Function return status for EFI API.