]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Universal/Network/IScsiDxe/IScsiDriver.h
[Change summary]:
[mirror_edk2.git] / MdeModulePkg / Universal / Network / IScsiDxe / IScsiDriver.h
index 30236e2d9799d069703226c2e16688953d80895b..6fdaeaf2e89e26f67af6c1bda04e8eb1e1faf371 100644 (file)
@@ -26,23 +26,13 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #include <Library/DevicePathLib.h>\r
 #include <Protocol/DriverBinding.h>\r
 #include <Protocol/ScsiPassThruExt.h>\r
-#include <Protocol/IScsiInitiatorName.h>\r
-#include <Protocol/ComponentName.h>\r
-#include <Protocol/ComponentName2.h>\r
-\r
 \r
 #define ISCSI_PRIVATE_GUID \\r
   { 0xfa3cde4c, 0x87c2, 0x427d, {0xae, 0xde, 0x7d, 0xd0, 0x96, 0xc8, 0x8c, 0x58} }\r
 \r
 #define ISCSI_INITIATOR_NAME_VAR_NAME L"I_NAME"\r
 \r
-extern EFI_COMPONENT_NAME2_PROTOCOL       gIScsiComponentName2;\r
-extern EFI_COMPONENT_NAME_PROTOCOL        gIScsiComponentName;\r
-\r
-extern EFI_ISCSI_INITIATOR_NAME_PROTOCOL  gIScsiInitiatorName;\r
-\r
-\r
-extern EFI_GUID                           mIScsiPrivateGuid;\r
+extern EFI_GUID                           gIScsiPrivateGuid;\r
 \r
 typedef struct _ISCSI_PRIVATE_PROTOCOL {\r
   UINT32  Reserved;\r
@@ -56,25 +46,25 @@ typedef struct _ISCSI_PRIVATE_PROTOCOL {
   Tests to see if this driver supports a given controller. If a child device is provided, \r
   it further tests to see if this driver supports creating a handle for the specified child device.\r
 \r
-  @param  This                 A pointer to the EFI_DRIVER_BINDING_PROTOCOL instance.\r
-  @param  ControllerHandle     The handle of the controller to test. This handle \r
-                               must support a protocol interface that supplies \r
-                               an I/O abstraction to the driver.\r
-  @param  RemainingDevicePath  A pointer to the remaining portion of a device path. \r
-                               This parameter is ignored by device drivers, and is optional for bus drivers.\r
-\r
-\r
-  @retval EFI_SUCCESS         The device specified by ControllerHandle and\r
-                              RemainingDevicePath is supported by the driver specified by This.\r
-  @retval EFI_ALREADY_STARTED The device specified by ControllerHandle and\r
-                              RemainingDevicePath is already being managed by the driver\r
-                              specified by This.\r
-  @retval EFI_ACCESS_DENIED   The device specified by ControllerHandle and\r
-                              RemainingDevicePath is already being managed by a different\r
-                              driver or an application that requires exclusive acces.\r
-                              Currently not implemented.\r
-  @retval EFI_UNSUPPORTED     The device specified by ControllerHandle and\r
-                              RemainingDevicePath is not supported by the driver specified by This.\r
+  @param[in]  This                 A pointer to the EFI_DRIVER_BINDING_PROTOCOL instance.\r
+  @param[in]  ControllerHandle     The handle of the controller to test. This handle \r
+                                   must support a protocol interface that supplies \r
+                                   an I/O abstraction to the driver.\r
+  @param[in]  RemainingDevicePath  A pointer to the remaining portion of a device path. \r
+                                   This parameter is ignored by device drivers, and is optional for bus drivers.\r
+\r
+\r
+  @retval EFI_SUCCESS              The device specified by ControllerHandle and\r
+                                   RemainingDevicePath is supported by the driver specified by This.\r
+  @retval EFI_ALREADY_STARTED      The device specified by ControllerHandle and\r
+                                   RemainingDevicePath is already being managed by the driver\r
+                                   specified by This.\r
+  @retval EFI_ACCESS_DENIED        The device specified by ControllerHandle and\r
+                                   RemainingDevicePath is already being managed by a different\r
+                                   driver or an application that requires exclusive acces.\r
+                                   Currently not implemented.\r
+  @retval EFI_UNSUPPORTED          The device specified by ControllerHandle and\r
+                                   RemainingDevicePath is not supported by the driver specified by This.\r
 **/\r
 EFI_STATUS\r
 EFIAPI\r
@@ -96,17 +86,18 @@ IScsiDriverBindingSupported (
   3. Prior to calling Start(), the Supported() function for the driver specified by This must\r
      have been called with the same calling parameters, and Supported() must have returned EFI_SUCCESS.  \r
 \r
-  @param  This                 A pointer to the EFI_DRIVER_BINDING_PROTOCOL instance.\r
-  @param  ControllerHandle     The handle of the controller to start. This handle \r
-                               must support a protocol interface that supplies \r
-                               an I/O abstraction to the driver.\r
-  @param  RemainingDevicePath  A pointer to the remaining portion of a device path. \r
-                               This parameter is ignored by device drivers, and is optional for bus drivers.\r
-\r
-  @retval EFI_SUCCESS          The device was started.\r
-  @retval EFI_DEVICE_ERROR     The device could not be started due to a device error.Currently not implemented.\r
-  @retval EFI_OUT_OF_RESOURCES The request could not be completed due to a lack of resources.\r
-  @retval other                The driver failded to start the device.\r
+  @param[in]  This                 A pointer to the EFI_DRIVER_BINDING_PROTOCOL instance.\r
+  @param[in]  ControllerHandle     The handle of the controller to start. This handle \r
+                                   must support a protocol interface that supplies \r
+                                   an I/O abstraction to the driver.\r
+  @param[in]  RemainingDevicePath  A pointer to the remaining portion of a device path. \r
+                                   This parameter is ignored by device drivers, and is optional for bus drivers.\r
+\r
+  @retval EFI_SUCCESS              The device was started.\r
+  @retval EFI_DEVICE_ERROR         The device could not be started due to a device error.\r
+                                   Currently not implemented.\r
+  @retval EFI_OUT_OF_RESOURCES     The request could not be completed due to a lack of resources.\r
+  @retval Others                   The driver failded to start the device.\r
 **/\r
 EFI_STATUS\r
 EFIAPI\r
@@ -131,16 +122,16 @@ IScsiDriverBindingStart (
      Start() function, and the Start() function must have called OpenProtocol() on\r
      ControllerHandle with an Attribute of EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER.\r
   \r
-  @param  This              A pointer to the EFI_DRIVER_BINDING_PROTOCOL instance.\r
-  @param  ControllerHandle  A handle to the device being stopped. The handle must \r
-                            support a bus specific I/O protocol for the driver \r
-                            to use to stop the device.\r
-  @param  NumberOfChildren  The number of child device handles in ChildHandleBuffer.Not used.\r
-  @param  ChildHandleBuffer An array of child handles to be freed. May be NULL \r
-                            if NumberOfChildren is 0.Not used.\r
-\r
-  @retval EFI_SUCCESS       The device was stopped.\r
-  @retval EFI_DEVICE_ERROR  The device could not be stopped due to a device error.\r
+  @param[in]  This              A pointer to the EFI_DRIVER_BINDING_PROTOCOL instance.\r
+  @param[in]  ControllerHandle  A handle to the device being stopped. The handle must \r
+                                support a bus specific I/O protocol for the driver \r
+                                to use to stop the device.\r
+  @param[in]  NumberOfChildren  The number of child device handles in ChildHandleBuffer.Not used.\r
+  @param[in]  ChildHandleBuffer An array of child handles to be freed. May be NULL \r
+                                if NumberOfChildren is 0.Not used.\r
+\r
+  @retval EFI_SUCCESS           The device was stopped.\r
+  @retval EFI_DEVICE_ERROR      The device could not be stopped due to a device error.\r
 **/\r
 EFI_STATUS\r
 EFIAPI\r
@@ -148,190 +139,7 @@ IScsiDriverBindingStop (
   IN EFI_DRIVER_BINDING_PROTOCOL  *This,\r
   IN EFI_HANDLE                   ControllerHandle,\r
   IN UINTN                        NumberOfChildren,\r
-  IN EFI_HANDLE                   *ChildHandleBuffer\r
-  );\r
-\r
-//\r
-// EFI Component Name Protocol for IScsi driver.\r
-//\r
-/**\r
-  Retrieves a Unicode string that is the user readable name of the EFI Driver.\r
-\r
-  This function retrieves the user readable name of a driver in the form of a\r
-  Unicode string. If the driver specified by This has a user readable name in\r
-  the language specified by Language, then a pointer to the driver name is\r
-  returned in DriverName, and EFI_SUCCESS is returned. If the driver specified\r
-  by This does not support the language specified by Language,\r
-  then EFI_UNSUPPORTED is returned.\r
-\r
-  @param  This[in]              A pointer to the EFI_COMPONENT_NAME_PROTOCOL\r
-                                instance.\r
-\r
-  @param  Language[in]          A pointer to a three character ISO 639-2 language\r
-                                identifier.\r
-                                This is the language of the driver name that that\r
-                                the caller is requesting, and it must match one of\r
-                                the languages specified in SupportedLanguages.  \r
-                                The number of languages supported by a driver is up\r
-                                to the driver writer.\r
-\r
-  @param  DriverName[out]       A pointer to the Unicode string to return.\r
-                                This Unicode string is the name of the\r
-                                driver specified by This in the language\r
-                                specified by Language.\r
-\r
-  @retval EFI_SUCCESS           The Unicode string for the Driver specified by\r
-                                This and the language specified by Language was\r
-                                returned in DriverName.\r
-\r
-  @retval EFI_INVALID_PARAMETER Language is NULL.\r
-\r
-  @retval EFI_INVALID_PARAMETER DriverName is NULL.\r
-\r
-  @retval EFI_UNSUPPORTED       The driver specified by This does not support\r
-                                the language specified by Language.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-IScsiComponentNameGetDriverName (\r
-  IN  EFI_COMPONENT_NAME_PROTOCOL   *This,\r
-  IN  CHAR8                         *Language,\r
-  OUT CHAR16                        **DriverName\r
-  );\r
-\r
-/**\r
-  Retrieves a Unicode string that is the user readable name of the controller\r
-  that is being managed by an EFI Driver.\r
-\r
-  @param  This[in]              A pointer to the EFI_COMPONENT_NAME_PROTOCOL instance.\r
-\r
-  @param  ControllerHandle[in]  The handle of a controller that the driver specified by\r
-                                This is managing.  This handle specifies the controller\r
-                                whose name is to be returned.\r
-\r
-  @param  ChildHandle[in]       The handle of the child controller to retrieve the name\r
-                                of.  This is an optional parameter that may be NULL.  It\r
-                                will be NULL for device drivers.  It will also be NULL\r
-                                for a bus drivers that wish to retrieve the name of the\r
-                                bus controller.  It will not be NULL for a bus driver\r
-                                that wishes to retrieve the name of a child controller.\r
-\r
-  @param  Language[in]          A pointer to a three character ISO 639-2 language \r
-                                identifier.  This is the language of the controller name\r
-                                that that the caller is requesting, and it must match one\r
-                                of the languages specified in SupportedLanguages.  The\r
-                                number of languages supported by a driver is up to the\r
-                                driver writer.\r
-\r
-  @param  ControllerName[out]   A pointer to the Unicode string to return.  This Unicode\r
-                                string is the name of the controller specified by \r
-                                ControllerHandle and ChildHandle in the language \r
-                                specified by Language from the point of view of the \r
-                                driver specified by This. \r
-\r
-  @retval EFI_SUCCESS           The Unicode string for the user readable name in the \r
-                                language specified by Language for the driver \r
-                                specified by This was returned in DriverName.\r
-\r
-  @retval EFI_INVALID_PARAMETER ControllerHandle is not a valid EFI_HANDLE.\r
-\r
-  @retval EFI_INVALID_PARAMETER ChildHandle is not NULL and it is not a valid EFI_HANDLE.\r
-\r
-  @retval EFI_INVALID_PARAMETER Language is NULL.\r
-\r
-  @retval EFI_INVALID_PARAMETER ControllerName is NULL.\r
-\r
-  @retval EFI_UNSUPPORTED       The driver specified by This is not currently managing\r
-                                the controller specified by ControllerHandle and ChildHandle.\r
-\r
-  @retval EFI_UNSUPPORTED       The driver specified by This does not support the \r
-                                language specified by Language.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-IScsiComponentNameGetControllerName (\r
-  IN  EFI_COMPONENT_NAME_PROTOCOL   *This,\r
-  IN  EFI_HANDLE                    ControllerHandle,\r
-  IN  EFI_HANDLE                    ChildHandle        OPTIONAL,\r
-  IN  CHAR8                         *Language,\r
-  OUT CHAR16                        **ControllerName\r
-  );\r
-  \r
-//\r
-// EFI IScsi Initiator Name Protocol for IScsi driver.\r
-//\r
-/**\r
-  Retrieves the current set value of iSCSI Initiator Name. \r
-\r
-  @param  This[in]              Pointer to the EFI_ISCSI_INITIATOR_NAME_PROTOCOL instance.\r
-\r
-  @param  BufferSize[in][out]   Size of the buffer in bytes pointed to by Buffer / Actual\r
-                                size of the variable data buffer.\r
-\r
-  @param  Buffer[out]           Pointer to the buffer for data to be read.\r
-\r
-  @retval EFI_SUCCESS           Data was successfully retrieved into the provided \r
-                                buffer and the BufferSize was sufficient to handle the\r
-                                iSCSI initiator name.\r
-  @retval EFI_BUFFER_TOO_SMALL  BufferSize is too small for the result. BufferSize will\r
-                                be updated with the size required to complete the request.\r
-                                Buffer will not be affected.\r
-\r
-  @retval EFI_INVALID_PARAMETER BufferSize is NULL. BufferSize and Buffer will not be\r
-                                affected.\r
-\r
-  @retval EFI_INVALID_PARAMETER Buffer is NULL. BufferSize and Buffer will not be\r
-                                affected.\r
-\r
-  @retval EFI_DEVICE_ERROR      The iSCSI initiator name could not be retrieved due to\r
-                                a hardware error.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-IScsiGetInitiatorName (\r
-  IN     EFI_ISCSI_INITIATOR_NAME_PROTOCOL  *This,\r
-  IN OUT UINTN                              *BufferSize,\r
-  OUT    VOID                               *Buffer\r
-  );\r
-\r
-/**\r
-  Sets the iSCSI Initiator Name. \r
-\r
-  @param  This[in]              Pointer to the EFI_ISCSI_INITIATOR_NAME_PROTOCOL instance.\r
-\r
-  @param  BufferSize[in][out]   Size of the buffer in bytes pointed to by Buffer.\r
-\r
-  @param  Buffer[out]           Pointer to the buffer for data to be written.\r
-  \r
-  @retval EFI_SUCCESS           Data was successfully stored by the protocol.\r
-\r
-  @retval EFI_UNSUPPORTED       Platform policies do not allow for data to be written.\r
-\r
-  @retval EFI_INVALID_PARAMETER BufferSize exceeds the maximum allowed limit.\r
-                                BufferSize will be updated with the maximum size\r
-                                required to complete the request.\r
-\r
-  @retval EFI_INVALID_PARAMETER Buffersize is NULL. BufferSize and Buffer will not be\r
-                                affected.\r
-\r
-  @retval EFI_INVALID_PARAMETER Buffer is NULL. BufferSize and Buffer will not be affected.\r
-\r
-  @retval EFI_DEVICE_ERROR      The data could not be stored due to a hardware error.\r
-\r
-  @retval EFI_OUT_OF_RESOURCES  Not enough storage is available to hold the data.\r
-\r
-  @retval EFI_PROTOCOL_ERROR    Input iSCSI initiator name does not adhere to RFC 3720.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-IScsiSetInitiatorName (\r
-  IN     EFI_ISCSI_INITIATOR_NAME_PROTOCOL  *This,\r
-  IN OUT UINTN                              *BufferSize,\r
-  IN     VOID                               *Buffer\r
+  IN EFI_HANDLE                   *ChildHandleBuffer OPTIONAL\r
   );\r
 \r
 #endif\r