Description, Status codes returned – Intel Extensible Firmware Interface User Manual

Page 155

Advertising
background image

Services — Boot Services

Version 1.10

12/01/02

5-57

Description

This function updates the handle database to show that the protocol instance specified by

Handle

and

Protocol

is no longer required by the agent and controller specified

AgentHandle

and

ControllerHandle

.

If

Handle

or

AgentHandle

is not a valid

EFI_HANDLE

, then

EFI_INVALID_PARAMETER

is returned. If

ControllerHandle

is not

NULL

, and

ControllerHandle

is not a valid

EFI_HANDLE

, then

EFI_INVALID_PARAMETER

is returned. If

Protocol

is

NULL

, then

EFI_INVALID_PARAMETER

is returned.

If the interface specified by

Protocol

is not supported by the handle specified by

Handle

, then

EFI_NOT_FOUND

is returned.

If the interface specified by

Protocol

is supported by the handle specified by

Handle

, then a

check is made to see if the protocol instance specified by

Protocol

and

Handle

was opened by

AgentHandle

and

ControllerHandle

with

OpenProtocol()

. If the protocol instance

was not opened by

AgentHandle

and

ControllerHandle

, then

EFI_NOT_FOUND

is

returned. If the protocol instance was opened by

AgentHandle

and

ControllerHandle

,

then all of those references are removed from the handle database, and

EFI_SUCCESS

is returned.

Status Codes Returned

EFI_SUCCESS

The protocol instance was closed.

EFI_INVALID_PARAMETER

Handle

is not a valid

EFI_HANDLE

.

EFI_INVALID_PARAMETER

AgentHandle

is not a valid

EFI_HANDLE

.

EFI_INVALID_PARAMETER

ControllerHandle

is not

NULL

and

ControllerHandle

is

not a valid

EFI_HANDLE

.

EFI_INVALID_PARAMETER

Protocol

is

NULL

.

EFI_NOT_FOUND

Handle

does not support the protocol specified by

Protocol

.

EFI_NOT_FOUND

The protocol interface specified by

Handle

and

Protocol

is not

currently open by

AgentHandle

and

ControllerHandle

.

Advertising