]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/Protocol/ScsiPassThru.h
Update the copyright notice format
[mirror_edk2.git] / MdePkg / Include / Protocol / ScsiPassThru.h
index 2192e9bf4951c36416389d136454bc42c77db3ea..ef601e7dfb7db7d4dc2f92e0d22d45b3f203ff36 100644 (file)
@@ -8,8 +8,8 @@
   a Block I/O driver for SCSI hard drives and SCSI CD-ROM or DVD drives to\r
   allow those devices to become boot devices.\r
 \r
-  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
-  All rights reserved. This program and the accompanying materials                          \r
+  Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.<BR>\r
+  This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
   http://opensource.org/licenses/bsd-license.php                                            \r
@@ -27,9 +27,9 @@
     0xa59e8fcf, 0xbda0, 0x43bb, {0x90, 0xb1, 0xd3, 0x73, 0x2e, 0xca, 0xa8, 0x77 } \\r
   }\r
 \r
-//\r
-// Forward reference for pure ANSI compatability\r
-//\r
+///\r
+/// Forward reference for pure ANSI compatability\r
+///\r
 typedef struct _EFI_SCSI_PASS_THRU_PROTOCOL  EFI_SCSI_PASS_THRU_PROTOCOL;\r
 \r
 #define EFI_SCSI_PASS_THRU_ATTRIBUTES_PHYSICAL    0x0001\r
@@ -66,23 +66,85 @@ typedef struct _EFI_SCSI_PASS_THRU_PROTOCOL  EFI_SCSI_PASS_THRU_PROTOCOL;
 #define EFI_SCSI_STATUS_TARGET_QUEUE_FULL                 0x28  // queue full\r
 \r
 typedef struct {\r
+  ///\r
+  /// The timeout, in 100 ns units, to use for the execution of this SCSI\r
+  /// Request Packet. A Timeout value of 0 means that this function\r
+  /// will wait indefinitely for the SCSI Request Packet to execute. If\r
+  /// Timeout is greater than zero, then this function will return\r
+  /// EFI_TIMEOUT if the time required to execute the SCSI Request\r
+  /// Packet is greater than Timeout.\r
+  ///\r
   UINT64  Timeout;\r
+  ///\r
+  /// A pointer to the data buffer to transfer between the SCSI\r
+  /// controller and the SCSI device. Must be aligned to the boundary\r
+  /// specified in the IoAlign field of the\r
+  /// EFI_SCSI_PASS_THRU_MODE structure.\r
+  ///\r
   VOID    *DataBuffer;\r
+  ///\r
+  /// A pointer to the sense data that was generated by the execution of\r
+  /// the SCSI Request Packet.\r
+  ///\r
   VOID    *SenseData;\r
+  ///\r
+  /// A pointer to buffer that contains the Command Data Block to\r
+  /// send to the SCSI device.\r
+  ///\r
   VOID    *Cdb;\r
+  ///\r
+  /// On Input, the size, in bytes, of InDataBuffer. On output, the\r
+  /// number of bytes transferred between the SCSI controller and the SCSI device.\r
+  ///\r
   UINT32  TransferLength;\r
+  ///\r
+  /// The length, in bytes, of the buffer Cdb. The standard values are\r
+  /// 6, 10, 12, and 16, but other values are possible if a variable length CDB is used.\r
+  ///\r
   UINT8   CdbLength;\r
+  ///\r
+  /// The direction of the data transfer. 0 for reads, 1 for writes. A\r
+  /// value of 2 is Reserved for Bi-Directional SCSI commands.\r
+  ///\r
   UINT8   DataDirection;\r
+  ///\r
+  /// The status of the SCSI Host Controller that produces the SCSI\r
+  /// bus where the SCSI device attached when the SCSI Request\r
+  /// Packet was executed on the SCSI Controller.\r
+  ///\r
   UINT8   HostAdapterStatus;\r
+  ///\r
+  /// The status returned by the SCSI device when the SCSI Request\r
+  /// Packet was executed.\r
+  ///\r
   UINT8   TargetStatus;\r
+  ///\r
+  /// On input, the length in bytes of the SenseData buffer. On\r
+  /// output, the number of bytes written to the SenseData buffer.\r
+  ///\r
   UINT8   SenseDataLength;\r
 } EFI_SCSI_PASS_THRU_SCSI_REQUEST_PACKET;\r
 \r
 typedef struct {\r
+  ///\r
+  /// A Null-terminated Unicode string that represents the printable name of the SCSI controller.\r
+  ///\r
   CHAR16  *ControllerName;\r
+  ///\r
+  /// A Null-terminated Unicode string that represents the printable name of the SCSI channel.\r
+  ///\r
   CHAR16  *ChannelName;\r
+  ///\r
+  /// The Target ID of the host adapter on the SCSI channel.\r
+  ///\r
   UINT32  AdapterId;\r
+  ///\r
+  /// Additional information on the attributes of the SCSI channel.\r
+  ///\r
   UINT32  Attributes;\r
+  ///\r
+  /// Supplies the alignment requirement for any buffer used in a data transfer.\r
+  ///\r
   UINT32  IoAlign;\r
 } EFI_SCSI_PASS_THRU_MODE;\r
 \r
@@ -109,8 +171,8 @@ typedef struct {
 \r
   @retval EFI_SUCCESS               The SCSI Request Packet was sent by the host, and\r
                                     TransferLength bytes were transferred to/from\r
-                                    DataBuffer.See HostAdapterStatus, TargetStatus,\r
-                                    SenseDataLength,and SenseData in that order\r
+                                    DataBuffer. See HostAdapterStatus, TargetStatus,\r
+                                    SenseDataLength, and SenseData in that order\r
                                     for additional status information.\r
   @retval EFI_BAD_BUFFER_SIZE       The SCSI Request Packet was executed, but the\r
                                     entire DataBuffer could not be transferred.\r
@@ -146,8 +208,7 @@ EFI_STATUS
   IN UINT64                                               Lun,\r
   IN OUT EFI_SCSI_PASS_THRU_SCSI_REQUEST_PACKET           *Packet,\r
   IN EFI_EVENT                                            Event   OPTIONAL\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Used to retrieve the list of legal Target IDs for SCSI devices \r
@@ -162,7 +223,7 @@ EFI_STATUS
                  Target ID of the first SCSI device present on\r
                  a SCSI channel.\r
   @param  Lun    On input, a pointer to the LUN of a SCSI device\r
-                 present on the SCSI channel.On output, a pointer\r
+                 present on the SCSI channel. On output, a pointer\r
                  to the LUN of the next SCSI device present on a\r
                  SCSI channel.\r
 \r
@@ -179,8 +240,7 @@ EFI_STATUS
   IN EFI_SCSI_PASS_THRU_PROTOCOL            *This,\r
   IN OUT UINT32                             *Target,\r
   IN OUT UINT64                             *Lun\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Used to allocate and build a device path node for a SCSI device \r
@@ -216,8 +276,7 @@ EFI_STATUS
   IN     UINT32                             Target,\r
   IN     UINT64                             Lun,\r
   IN OUT EFI_DEVICE_PATH_PROTOCOL           **DevicePath\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Used to translate a device path node to a Target ID and LUN.\r
@@ -249,8 +308,7 @@ EFI_STATUS
   IN  EFI_DEVICE_PATH_PROTOCOL              *DevicePath,\r
   OUT UINT32                                *Target,\r
   OUT UINT64                                *Lun\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Resets a SCSI channel.This operation resets all the \r
@@ -271,8 +329,7 @@ typedef
 EFI_STATUS\r
 (EFIAPI *EFI_SCSI_PASS_THRU_RESET_CHANNEL)(\r
   IN EFI_SCSI_PASS_THRU_PROTOCOL             *This\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Resets a SCSI device that is connected to a SCSI channel.\r
@@ -299,41 +356,19 @@ EFI_STATUS
   IN EFI_SCSI_PASS_THRU_PROTOCOL             *This,\r
   IN UINT32                                  Target,\r
   IN UINT64                                  Lun\r
-  )\r
-;\r
-\r
-/**  \r
-  @par Protocol Description:\r
-  The EFI_SCSI_PASS_THRU_PROTOCOL provides information about a SCSI channel and\r
-  the ability to send SCI Request Packets to any SCSI device attached to that SCSI channel. The\r
-  information includes the Target ID of the host controller on the SCSI channel, the attributes of\r
-  the SCSI channel, the printable name for the SCSI controller, and the printable name of the\r
-  SCSI channel.\r
-\r
-  @param Mode \r
-  A pointer to the EFI_SCSI_PASS_THRU_MODE data for this SCSI channel.\r
-\r
-  @param PassThru \r
-  Sends a SCSI Request Packet to a SCSI device that is connected to the SCSI channel.\r
-\r
-  @param GetNextDevice \r
-  Used to retrieve the list of legal Target IDs and LUNs for the\r
-  SCSI devices on a SCSI channel. \r
-\r
-  @param BuildDevicePath \r
-  Used to allocate and build a device path node for a SCSI device on a SCSI channel.\r
-\r
-  @param GetTargetLun \r
-  Used to translate a device path node to a Target ID and LUN.\r
-\r
-  @param ResetChannel \r
-  Resets the SCSI channel. This operation resets all the SCSI\r
-  devices connected to the SCSI channel.\r
-\r
-  @param ResetTarget \r
-  Resets a SCSI device that is connected to the SCSI channel. \r
-**/\r
+  );\r
+\r
+///\r
+/// The EFI_SCSI_PASS_THRU_PROTOCOL provides information about a SCSI channel and\r
+/// the ability to send SCSI Request Packets to any SCSI device attached to that SCSI channel. The\r
+/// information includes the Target ID of the host controller on the SCSI channel, the attributes of\r
+/// the SCSI channel, the printable name for the SCSI controller, and the printable name of the\r
+/// SCSI channel.\r
+///\r
 struct _EFI_SCSI_PASS_THRU_PROTOCOL {\r
+  ///\r
+  /// A pointer to the EFI_SCSI_PASS_THRU_MODE data for this SCSI channel.\r
+  ///\r
   EFI_SCSI_PASS_THRU_MODE               *Mode;\r
   EFI_SCSI_PASS_THRU_PASSTHRU           PassThru;\r
   EFI_SCSI_PASS_THRU_GET_NEXT_DEVICE    GetNextDevice;\r