]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/Ppi/BlockIo.h
MdePkg: Add UFS (Universal Flash Storage) related definitions
[mirror_edk2.git] / MdePkg / Include / Ppi / BlockIo.h
index ab86ff485a0fc15366d83f4bd28f06f1854f4515..a69419e284708c802fb0f9b7180656573f59a143 100644 (file)
   Block I/O PPIs that are provided by the PEI ATAPI driver and PEI legacy floppy \r
   driver are the same, here we define a set of general PPIs for both drivers to use.\r
   \r
-  Copyright (c) 2007 - 2009, 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
-  http://opensource.org/licenses/bsd-license.php\r
+Copyright (c) 2007 - 2015, Intel Corporation. All rights reserved.<BR>\r
+This program and the accompanying materials are licensed and made available under \r
+the terms and conditions of the BSD License that accompanies this distribution.  \r
+The full text of the license may be found at\r
+http://opensource.org/licenses/bsd-license.php.                                            \r
 \r
-  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
-  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
 \r
   @par Revision Reference:\r
   This PPI is defined in UEFI Platform Initialization Specification 1.2 Volume 1: \r
-  Pre-EFI Initalization Core Interface\r
+  Pre-EFI Initalization Core Interface.\r
 \r
 **/\r
 \r
   }\r
 \r
 ///\r
-/// Forward declaration for EFI_PEI_RECOVERY_BLOCK_IO_PPI\r
+/// The forward declaration for EFI_PEI_RECOVERY_BLOCK_IO_PPI.\r
 ///\r
 typedef struct _EFI_PEI_RECOVERY_BLOCK_IO_PPI  EFI_PEI_RECOVERY_BLOCK_IO_PPI;\r
 \r
 ///\r
-/// All blocks on the recovery device are addressed with a 64-bit Logical Block Address (LBA)\r
+/// All blocks on the recovery device are addressed with a 64-bit Logical Block Address (LBA).\r
 ///\r
 typedef UINT64  EFI_PEI_LBA;\r
 \r
@@ -54,17 +54,20 @@ typedef enum {
   IdeCDROM      = 1,   ///< The recovery device is an IDE CD-ROM\r
   IdeLS120      = 2,   ///< The recovery device is an IDE LS-120\r
   UsbMassStorage= 3,   ///< The recovery device is a USB Mass Storage device\r
+  SD            = 4,   ///< The recovery device is a Secure Digital device\r
+  EMMC          = 5,   ///< The recovery device is a eMMC device\r
+  UfsDevice     = 6,   ///< The recovery device is a Universal Flash Storage device\r
   MaxDeviceType\r
 } EFI_PEI_BLOCK_DEVICE_TYPE;\r
 \r
 ///\r
-/// Inconsistent with specification here: \r
+/// Specification inconsistency here: \r
 /// PEI_BLOCK_IO_MEDIA has been changed to EFI_PEI_BLOCK_IO_MEDIA.\r
 /// Inconsistency exists in UEFI Platform Initialization Specification 1.2 \r
 /// Volume 1: Pre-EFI Initalization Core Interface, where all referrences to \r
 /// this structure name are with the "EFI_" prefix, except for the definition \r
 /// which is without "EFI_".  So the name of PEI_BLOCK_IO_MEDIA is taken as the \r
-/// exception, and EFI_PEI_BLOCK_IO_MEDIA is used to comply with most part of \r
+/// exception, and EFI_PEI_BLOCK_IO_MEDIA is used to comply with most of \r
 /// the specification.\r
 ///\r
 typedef struct {\r
@@ -103,6 +106,8 @@ typedef struct {
                                    instance.\r
   @param[out] NumberBlockDevices   The number of block I/O devices discovered.\r
 \r
+  @retval     EFI_SUCCESS          The operation performed successfully.\r
+\r
 **/\r
 typedef\r
 EFI_STATUS\r
@@ -144,7 +149,7 @@ EFI_STATUS
       order also applies to nested partitions, such as legacy MBR, where the \r
       outermost partitions would have precedence in the reporting order. The \r
       same logic applies to systems such as IDE that have precedence relationships \r
-      like "Master/Slave" or "Primary/Secondary"; the master device should be \r
+      like "Master/Slave" or "Primary/Secondary". The master device should be \r
       reported first, the slave second.\r
   \r
   @retval EFI_SUCCESS        Media information about the specified block device \r
@@ -174,7 +179,7 @@ EFI_STATUS
   @param[in]  This          Indicates the EFI_PEI_RECOVERY_BLOCK_IO_PPI instance.\r
   @param[in]  DeviceIndex   Specifies the block device to which the function wants \r
                             to talk. Because the driver that implements Block I/O \r
-                            PPIs will manage multiple block devices, the PPIs that \r
+                            PPIs will manage multiple block devices, PPIs that \r
                             want to talk to a single device must specify the device \r
                             index that was assigned during the enumeration process. \r
                             This index is a number from one to NumberBlockDevices.\r