diff options
Diffstat (limited to 'MdePkg/Include/Protocol/DriverBinding.h')
-rw-r--r-- | MdePkg/Include/Protocol/DriverBinding.h | 100 |
1 files changed, 46 insertions, 54 deletions
diff --git a/MdePkg/Include/Protocol/DriverBinding.h b/MdePkg/Include/Protocol/DriverBinding.h index 6f6ddf6ad1..43fc16593b 100644 --- a/MdePkg/Include/Protocol/DriverBinding.h +++ b/MdePkg/Include/Protocol/DriverBinding.h @@ -30,7 +30,12 @@ typedef struct _EFI_DRIVER_BINDING_PROTOCOL EFI_DRIVER_BINDING_PROTOCOL;
/**
- Test to see if this driver supports ControllerHandle.
+ Test to see if this driver supports ControllerHandle. This service
+ is called by the EFI boot service ConnectController(). In
+ order to make drivers as small as possible, there are a few calling
+ restrictions for this service. ConnectController() must
+ follow these calling restrictions. If any other agent wishes to call
+ Supported() it must also follow these calling restrictions.
@param This Protocol instance pointer.
@param ControllerHandle Handle of device to test
@@ -51,7 +56,12 @@ EFI_STATUS );
/**
- Start this driver on ControllerHandle.
+ Start this driver on ControllerHandle. This service is called by the
+ EFI boot service ConnectController(). In order to make
+ drivers as small as possible, there are a few calling restrictions for
+ this service. ConnectController() must follow these
+ calling restrictions. If any other agent wishes to call Start() it
+ must also follow these calling restrictions.
@param This Protocol instance pointer.
@param ControllerHandle Handle of device to bind driver to
@@ -72,8 +82,13 @@ EFI_STATUS );
/**
- Stop this driver on ControllerHandle.
-
+ Stop this driver on ControllerHandle. This service is called by the
+ EFI boot service DisconnectController(). In order to
+ make drivers as small as possible, there are a few calling
+ restrictions for this service. DisconnectController()
+ must follow these calling restrictions. If any other agent wishes
+ to call Stop() it must also follow these calling restrictions.
+
@param This Protocol instance pointer.
@param ControllerHandle Handle of device to stop driver on
@param NumberOfChildren Number of Handles in ChildHandleBuffer. If number of
@@ -100,63 +115,40 @@ EFI_STATUS @par Protocol Description:
This protocol provides the services required to determine if a driver supports a given controller.
If a controller is supported, then it also provides routines to start and stop the controller.
-
- @param Supported
- Tests to see if this driver supports a given controller. This service
- is called by the EFI boot service ConnectController(). In
- order to make drivers as small as possible, there are a few calling
- restrictions for this service. ConnectController() must
- follow these calling restrictions. If any other agent wishes to call
- Supported() it must also follow these calling restrictions.
-
-
- @param Start
- Starts a controller using this driver. This service is called by the
- EFI boot service ConnectController(). In order to make
- drivers as small as possible, there are a few calling restrictions for
- this service. ConnectController() must follow these
- calling restrictions. If any other agent wishes to call Start() it
- must also follow these calling restrictions.
-
- @param Stop
- Stops a controller using this driver. This service is called by the
- EFI boot service DisconnectController(). In order to
- make drivers as small as possible, there are a few calling
- restrictions for this service. DisconnectController()
- must follow these calling restrictions. If any other agent wishes
- to call Stop() it must also follow these calling restrictions.
-
- @param Version
- The version number of the UEFI driver that produced the
- EFI_DRIVER_BINDING_PROTOCOL. This field is used by
- the EFI boot service ConnectController() to determine
- the order that driver's Supported() service will be used when
- a controller needs to be started. EFI Driver Binding Protocol
- instances with higher Version values will be used before ones
- with lower Version values. The Version values of 0x0-
- 0x0f and 0xfffffff0-0xffffffff are reserved for
- platform/OEM specific drivers. The Version values of 0x10-
- 0xffffffef are reserved for IHV-developed drivers.
-
- @param ImageHandle
- The image handle of the UEFI driver that produced this instance
- of the EFI_DRIVER_BINDING_PROTOCOL.
-
- @param DriverBindingHandle
- The handle on which this instance of the
- EFI_DRIVER_BINDING_PROTOCOL is installed. In most
- cases, this is the same handle as ImageHandle. However, for
- UEFI drivers that produce more than one instance of the
- EFI_DRIVER_BINDING_PROTOCOL, this value may not be
- the same as ImageHandle.
-
**/
struct _EFI_DRIVER_BINDING_PROTOCOL {
EFI_DRIVER_BINDING_SUPPORTED Supported;
EFI_DRIVER_BINDING_START Start;
EFI_DRIVER_BINDING_STOP Stop;
+
+ ///
+ /// The version number of the UEFI driver that produced the
+ /// EFI_DRIVER_BINDING_PROTOCOL. This field is used by
+ /// the EFI boot service ConnectController() to determine
+ /// the order that driver's Supported() service will be used when
+ /// a controller needs to be started. EFI Driver Binding Protocol
+ /// instances with higher Version values will be used before ones
+ /// with lower Version values. The Version values of 0x0-
+ /// 0x0f and 0xfffffff0-0xffffffff are reserved for
+ /// platform/OEM specific drivers. The Version values of 0x10-
+ /// 0xffffffef are reserved for IHV-developed drivers.
+ ///
UINT32 Version;
+
+ ///
+ /// The image handle of the UEFI driver that produced this instance
+ /// of the EFI_DRIVER_BINDING_PROTOCOL.
+ ///
EFI_HANDLE ImageHandle;
+
+ ///
+ /// The handle on which this instance of the
+ /// EFI_DRIVER_BINDING_PROTOCOL is installed. In most
+ /// cases, this is the same handle as ImageHandle. However, for
+ /// UEFI drivers that produce more than one instance of the
+ /// EFI_DRIVER_BINDING_PROTOCOL, this value may not be
+ /// the same as ImageHandle.
+ ///
EFI_HANDLE DriverBindingHandle;
};
|