summaryrefslogtreecommitdiff
path: root/MdePkg/Include/Protocol/ServiceBinding.h
diff options
context:
space:
mode:
authorlgao4 <lgao4@6f19259b-4bc3-4df7-8a09-765794883524>2008-11-19 14:24:27 +0000
committerlgao4 <lgao4@6f19259b-4bc3-4df7-8a09-765794883524>2008-11-19 14:24:27 +0000
commitf1004231ee519fc24c3ad5e90289f5d9445ac9d2 (patch)
treea3fa13a48762d20db96a4bc743fdaaeff211d777 /MdePkg/Include/Protocol/ServiceBinding.h
parent74fec7085b01caac858ef511056e72b2b9ad5795 (diff)
downloadedk2-platforms-f1004231ee519fc24c3ad5e90289f5d9445ac9d2.tar.xz
Update comments for Protocol definitions to match UEFI spec. And add the missing comments for the data structure.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6636 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'MdePkg/Include/Protocol/ServiceBinding.h')
-rw-r--r--MdePkg/Include/Protocol/ServiceBinding.h36
1 files changed, 21 insertions, 15 deletions
diff --git a/MdePkg/Include/Protocol/ServiceBinding.h b/MdePkg/Include/Protocol/ServiceBinding.h
index afd25efb57..abd4a404c5 100644
--- a/MdePkg/Include/Protocol/ServiceBinding.h
+++ b/MdePkg/Include/Protocol/ServiceBinding.h
@@ -1,4 +1,5 @@
-/** @file
+/** @file
+ UEFI Service Binding Protocol is defined in UEFI specification.
The file defines the generic Service Binding Protocol functions.
It provides services that are required to create and destroy child
@@ -24,14 +25,17 @@
typedef struct _EFI_SERVICE_BINDING_PROTOCOL EFI_SERVICE_BINDING_PROTOCOL;
/**
- Creates a child handle with a set of I/O services.
+ Creates a child handle and installs a protocol.
+ The CreateChild() function installs a protocol on ChildHandle.
+ If ChildHandle is a pointer to NULL, then a new handle is created and returned in ChildHandle.
+ If ChildHandle is not a pointer to NULL, then the protocol installs on the existing ChildHandle.
- @param This Protocol instance pointer.
- @param ChildHandle Pointer to the handle of the child to create. If it is NULL,
- then a new handle is created. If it is not NULL, then the
- I/O services are added to the existing child handle.
+ @param This Pointer to the EFI_SERVICE_BINDING_PROTOCOL instance.
+ @param ChildHandle Pointer to the handle of the child to create. If it is NULL,
+ then a new handle is created. If it is a pointer to an existing UEFI handle,
+ then the protocol is added to the existing UEFI handle.
- @retval EFI_SUCCES The child handle was created with the I/O services
+ @retval EFI_SUCCES The protocol was added to ChildHandle.
@retval EFI_INVALID_PARAMETER ChildHandle is NULL.
@retval EFI_OUT_OF_RESOURCES There are not enough resources availabe to create
the child
@@ -46,17 +50,19 @@ EFI_STATUS
);
/**
- Destroys a child handle with a set of I/O services.
+ Destroys a child handle with a protocol installed on it.
+ The DestroyChild() function does the opposite of CreateChild(). It removes a protocol
+ that was installed by CreateChild() from ChildHandle. If the removed protocol is the
+ last protocol on ChildHandle, then ChildHandle is destroyed.
- @param This Protocol instance pointer.
+ @param This Pointer to the EFI_SERVICE_BINDING_PROTOCOL instance.
@param ChildHandle Handle of the child to destroy
- @retval EFI_SUCCES The I/O services were removed from the child handle
- @retval EFI_UNSUPPORTED The child handle does not support the I/O services
- that are being removed.
- @retval EFI_INVALID_PARAMETER Child handle is not a valid EFI Handle.
- @retval EFI_ACCESS_DENIED The child handle could not be destroyed because its
- I/O services are being used.
+ @retval EFI_SUCCES The protocol was removed from ChildHandle.
+ @retval EFI_UNSUPPORTED ChildHandle does not support the protocol that is being removed.
+ @retval EFI_INVALID_PARAMETER Child handle is not a valid UEFI Handle.
+ @retval EFI_ACCESS_DENIED The protocol could not be removed from the ChildHandle
+ because its services are being used.
@retval other The child handle was not destroyed
**/