]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/Protocol/ScsiIo.h
Code Scrub for Protocol and Ppi Definition
[mirror_edk2.git] / MdePkg / Include / Protocol / ScsiIo.h
index 953098bb2509f60907610a543c9c5c9b036c0a5d..030a06229d3677e6ad547dba7d5009b8e719a808 100644 (file)
@@ -1,7 +1,10 @@
 /** @file\r
   EFI_SCSI_IO_PROTOCOL as defined in UEFI 2.0.\r
+  This protocol is used by code, typically drivers, running in the EFI boot \r
+  services environment to access SCSI devices. In particular, functions for \r
+  managing devices on SCSI buses are defined here.\r
 \r
-  Copyright (c) 2006, Intel Corporation                                                         \r
+  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
   All rights reserved. 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
@@ -217,6 +220,34 @@ EFI_STATUS
   )\r
 ;\r
 \r
+/**  \r
+  @par Protocol Description:\r
+  Provides services to manage and communicate with SCSI devices.\r
+\r
+  @param GetDeviceType\r
+  Retrieves the information of the device type which the SCSI device belongs to. \r
+\r
+  @param GetDeviceLocation\r
+  Retrieves the device location information in the SCSI bus. \r
+\r
+  @param ResetBus\r
+  Resets the entire SCSI bus the SCSI device attaches to. \r
+\r
+  @param ResetDevice\r
+  Resets the SCSI Device that is specified by the device handle the SCSI I/O \r
+  protocol attaches. \r
+\r
+  @param ExecuteScsiCommand\r
+  Sends a SCSI command to the SCSI device and waits for the execution completion \r
+  until an exit condition is met, or a timeout occurs. \r
+\r
+  @param IoAlign\r
+  Supplies the alignment requirement for any buffer used in a data transfer. \r
+  IoAlign values of 0 and 1 mean that the buffer can be placed anywhere in memory. \r
+  Otherwise, IoAlign must be a power of 2, and the requirement is that the \r
+  start address of a buffer must be evenly divisible by IoAlign with no remainder.\r
+\r
+**/\r
 struct _EFI_SCSI_IO_PROTOCOL {\r
   EFI_SCSI_IO_PROTOCOL_GET_DEVICE_TYPE      GetDeviceType;\r
   EFI_SCSI_IO_PROTOCOL_GET_DEVICE_LOCATION  GetDeviceLocation;\r