]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/Protocol/FirmwareVolume2.h
Code Scrub for Protocol and Ppi Definition
[mirror_edk2.git] / MdePkg / Include / Protocol / FirmwareVolume2.h
index 66fa1e4a39c499df1b9289fc7efb08ac46a2c70c..fd07c95f55a93466ada38ac56f284972d4f05aa1 100644 (file)
@@ -5,7 +5,7 @@
   the system during the DXE phase. The Firmware Volume Protocol also provides\r
   mechanisms for determining and modifying some attributes of the firmware volume.\r
 \r
-  Copyright (c) 2006 - 2007, 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
@@ -94,11 +94,9 @@ typedef UINT64  EFI_FV_ATTRIBUTES;
   GetVolumeAttributes() function. GetVolumeAttributes() is\r
   callable only from TPL_NOTIFY and below. Behavior of\r
   GetVolumeAttributes() at any EFI_TPL above TPL_NOTIFY is\r
-  undefined. Type EFI_TPL is defined in RaiseTPL() in the UEFI\r
-  2.0 specification.\r
-  \r
-  @param  This    Indicates the EFI_FIRMWARE_VOLUME2_PROTOCOL\r
-                  instance.\r
+  undefined.\r
+\r
+  @param  This          Indicates the EFI_FIRMWARE_VOLUME2_PROTOCOL instance.\r
   \r
   @param  FvAttributes  Pointer to an EFI_FV_ATTRIBUTES in which\r
                         the attributes and current settings are\r
@@ -132,12 +130,9 @@ EFI_STATUS
   prevents further modification to all the attribute bits.\r
   SetVolumeAttributes() is callable only from TPL_NOTIFY and\r
   below. Behavior of SetVolumeAttributes() at any EFI_TPL above\r
-  TPL_NOTIFY is undefined. Type EFI_TPL is defined in\r
-  RaiseTPL() in the UEFI 2.0 specification.\r
-\r
+  TPL_NOTIFY is undefined.\r
 \r
-  @param  This  Indicates the EFI_FIRMWARE_VOLUME2_PROTOCOL\r
-                instance.\r
+  @param  This          Indicates the EFI_FIRMWARE_VOLUME2_PROTOCOL instance.\r
   \r
   @param  FvAttributes  On input, FvAttributes is a pointer to\r
                         an EFI_FV_ATTRIBUTES containing the\r
@@ -148,10 +143,10 @@ EFI_STATUS
                         modified and the firmware volume\r
                         settings are not changed.\r
   \r
-  @retval EFI_SUCCESS   The requested firmware volume attributes\r
-                        were set and the resulting\r
-                        EFI_FV_ATTRIBUTES is returned in\r
-                        FvAttributes.\r
+  @retval EFI_SUCCESS           The requested firmware volume attributes\r
+                                were set and the resulting\r
+                                EFI_FV_ATTRIBUTES is returned in\r
+                                FvAttributes.\r
 \r
   @retval EFI_INVALID_PARAMETER FvAttributes:EFI_FV_READ_STATUS\r
                                 is set to 1 on input, but the\r
@@ -251,37 +246,35 @@ EFI_STATUS
   other output parameters are returned with valid values.\r
   ReadFile() is callable only from TPL_NOTIFY and below.\r
   Behavior of ReadFile() at any EFI_TPL above TPL_NOTIFY is\r
-  undefined. Type EFI_TPL is defined in RaiseTPL() in the UEFI\r
-  2.0 specification.\r
-  \r
-  @param  This  Indicates the EFI_FIRMWARE_VOLUME2_PROTOCOL\r
-                instance.\r
+  undefined.\r
+\r
+  @param  This                  Indicates the EFI_FIRMWARE_VOLUME2_PROTOCOL instance.\r
   \r
-  @param  NameGuid  Pointer to an EFI_GUID, which is the file\r
-                    name. All firmware file names are EFI_GUIDs.\r
-                    A single firmware volume must not have two\r
-                    valid files with the same file name\r
-                    EFI_GUID.\r
+  @param  NameGuid              Pointer to an EFI_GUID, which is the file\r
+                                name. All firmware file names are EFI_GUIDs.\r
+                                A single firmware volume must not have two\r
+                                valid files with the same file name\r
+                                EFI_GUID.\r
   \r
-  @param  Buffer  Pointer to a pointer to a buffer in which the\r
-                  file contents are returned, not including the\r
-                  file header.\r
-  @param  BufferSize  Pointer to a caller-allocated UINTN. It\r
-                      indicates the size of the memory\r
-                      represented by Buffer.\r
+  @param  Buffer                Pointer to a pointer to a buffer in which the\r
+                                file contents are returned, not including the\r
+                                file header.\r
+\r
+  @param  BufferSize            Pointer to a caller-allocated UINTN. It\r
+                                indicates the size of the memory\r
+                                represented by Buffer.\r
   \r
-  @param  FoundType   Pointer to a caller-allocated\r
-                      EFI_FV_FILETYPE.\r
+  @param  FoundType             Pointer to a caller-allocated EFI_FV_FILETYPE.\r
   \r
-  @param  FileAttributes  Pointer to a  caller-allocated\r
-                          EFI_FV_FILE_ATTRIBUTES.\r
+  @param  FileAttributes        Pointer to a  caller-allocated\r
+                                EFI_FV_FILE_ATTRIBUTES.\r
   \r
   @param  AuthenticationStatus  Pointer to a caller-allocated\r
                                 UINT32 in which the\r
                                 authentication status is\r
                                 returned.\r
   \r
-  @retval EFI_SUCCESS   The call completed successfully.\r
+  @retval EFI_SUCCESS                 The call completed successfully.\r
   \r
   @retval EFI_WARN_BUFFER_TOO_SMALL   The buffer is too small to\r
                                       contain the requested\r
@@ -289,17 +282,15 @@ EFI_STATUS
                                       filled and the output is\r
                                       truncated.\r
 \r
-  @retval EFI_OUT_OF_RESOURCES  An allocation failure occurred.\r
+  @retval EFI_OUT_OF_RESOURCES        An allocation failure occurred.\r
 \r
-  @retval EFI_NOT_FOUND   Name was not found in the firmware\r
-                          volume.\r
+  @retval EFI_NOT_FOUND               Name was not found in the firmware volume.\r
 \r
-  @retval EFI_DEVICE_ERROR  A hardware error occurred when\r
-                            attempting to access the firmware\r
-                            volume.\r
+  @retval EFI_DEVICE_ERROR            A hardware error occurred when\r
+                                      attempting to access the firmware volume.\r
 \r
-  @retval EFI_ACCESS_DENIED The firmware volume is configured to\r
-                            isallow reads.\r
+  @retval EFI_ACCESS_DENIED           The firmware volume is configured to\r
+                                      isallow reads.\r
 \r
 **/\r
 typedef\r
@@ -343,36 +334,33 @@ EFI_STATUS
   parameters are returned with valid values. ReadSection() is\r
   callable only from TPL_NOTIFY and below. Behavior of\r
   ReadSection() at any EFI_TPL above TPL_NOTIFY is\r
-  undefined. Type EFI_TPL is defined in RaiseTPL() in the UEFI\r
-  2.0 specification.\r
-\r
-\r
-  @param This   Indicates the EFI_FIRMWARE_VOLUME2_PROTOCOL\r
-                instance.\r
-  \r
-  @param NameGuid   Pointer to an EFI_GUID, which indicates the\r
-                    file name from which the requested section\r
-                    will be read.\r
-  \r
-  @param SectionType  Indicates the section type to return.\r
-                      SectionType in conjunction with\r
-                      SectionInstance indicates which section to\r
-                      return.\r
-  \r
-  @param SectionInstance  Indicates which instance of sections\r
-                          with a type of SectionType to return.\r
-                          SectionType in conjunction with\r
-                          SectionInstance indicates which\r
-                          section to return. SectionInstance is\r
-                          zero based.\r
-  \r
-  @param Buffer   Pointer to a pointer to a buffer in which the\r
-                  section contents are returned, not including\r
-                  the section header.\r
-  \r
-  @param BufferSize   Pointer to a caller-allocated UINTN. It\r
-                      indicates the size of the memory\r
-                      represented by Buffer.\r
+  undefined.\r
+\r
+  @param  This                Indicates the EFI_FIRMWARE_VOLUME2_PROTOCOL instance.\r
\r
+  @param NameGuid             Pointer to an EFI_GUID, which indicates the\r
+                              file name from which the requested section\r
+                              will be read.\r
+  \r
+  @param SectionType          Indicates the section type to return.\r
+                              SectionType in conjunction with\r
+                              SectionInstance indicates which section to\r
+                              return.\r
+  \r
+  @param SectionInstance      Indicates which instance of sections\r
+                              with a type of SectionType to return.\r
+                              SectionType in conjunction with\r
+                              SectionInstance indicates which\r
+                              section to return. SectionInstance is\r
+                              zero based.\r
+  \r
+  @param Buffer               Pointer to a pointer to a buffer in which the\r
+                              section contents are returned, not including\r
+                              the section header.\r
+  \r
+  @param BufferSize           Pointer to a caller-allocated UINTN. It\r
+                              indicates the size of the memory\r
+                              represented by Buffer.\r
   \r
   @param AuthenticationStatus Pointer to a caller-allocated\r
                               UINT32 in which the authentication\r
@@ -462,39 +450,37 @@ typedef struct {
   Architectural Elements 84 August 21, 2006 Version 1.0\r
   WriteFile() is callable only from TPL_NOTIFY and below.\r
   Behavior of WriteFile() at any EFI_TPL above TPL_NOTIFY is\r
-  undefined. Type EFI_TPL is defined in RaiseTPL() in the UEFI 2.0\r
-  specification.\r
-\r
-  @param This Indicates the EFI_FIRMWARE_VOLUME2_PROTOCOL\r
-              instance. NumberOfFiles Indicates the number of\r
-              elements in the array pointed to by FileData.\r
+  undefined. \r
 \r
+  @param This           Indicates the EFI_FIRMWARE_VOLUME2_PROTOCOL instance.\r
 \r
-  @param WritePolicy  Indicates the level of reliability for the\r
-                      write in the event of a power failure or\r
-                      other system failure during the write\r
-                      operation.\r
+  @param NumberOfFiles  Indicates the number of elements in the array pointed to by FileData\r
 \r
-  @param FileData   Pointer to an array of\r
-                    EFI_FV_WRITE_FILE_DATA. Each element of\r
-                    FileData[] represents a file to be written.\r
+  @param WritePolicy    Indicates the level of reliability for the\r
+                        write in the event of a power failure or\r
+                        other system failure during the write\r
+                        operation.\r
\r
+  @param FileData       Pointer to an array of\r
+                        EFI_FV_WRITE_FILE_DATA. Each element of\r
+                        FileData[] represents a file to be written.\r
 \r
 \r
-  @retval EFI_SUCCESS The write completed successfully.\r
+  @retval EFI_SUCCESS             The write completed successfully.\r
   \r
-  @retval EFI_OUT_OF_RESOURCES  The firmware volume does not\r
-                                have enough free space to\r
-                                storefile(s).\r
+  @retval EFI_OUT_OF_RESOURCES    The firmware volume does not\r
+                                  have enough free space to\r
+                                  storefile(s).\r
   \r
-  @retval EFI_DEVICE_ERROR  A hardware error occurred when\r
-                            attempting to access the firmware volume.\r
+  @retval EFI_DEVICE_ERROR        A hardware error occurred when\r
+                                  attempting to access the firmware volume.\r
   \r
-  @retval EFI_WRITE_PROTECTED   The firmware volume is\r
-                                configured to disallow writes.\r
+  @retval EFI_WRITE_PROTECTED     The firmware volume is\r
+                                  configured to disallow writes.\r
   \r
-  @retval EFI_NOT_FOUND   A delete was requested, but the\r
-                          requested file was not found in the\r
-                          firmware volume.\r
+  @retval EFI_NOT_FOUND           A delete was requested, but the\r
+                                  requested file was not found in the\r
+                                  firmware volume.\r
   \r
   @retval EFI_INVALID_PARAMETER   A delete was requested with a\r
                                   multiple file write.\r
@@ -536,22 +522,16 @@ EFI_STATUS
   implementation specific and no semantic content is implied.\r
   GetNextFile() is callable only from TPL_NOTIFY and below.\r
   Behavior of GetNextFile() at any EFI_TPL above TPL_NOTIFY is\r
-  undefined. Type EFI_TPL is defined in RaiseTPL() in the UEFI 2.0\r
-  specification. Status Codes Returned\r
-\r
-\r
-  @param This Indicates the EFI_FIRMWARE_VOLUME2_PROTOCOL\r
-              instance. Key Pointer to a caller-allocated buffer\r
-              that contains implementation-specific data that is\r
-              used to track where to begin the search for the\r
-              next file. The size of the buffer must be at least\r
-              This->KeySize bytes long. To re-initialize the\r
-              search and begin from the beginning of the\r
-              firmware volume, the entire buffer must be cleared\r
-              to zero. Other than clearing the buffer to\r
-              initiate a new search, the caller must not modify\r
-              the data in the buffer between calls to\r
-              GetNextFile().\r
+  undefined. \r
+\r
+  @param This       Indicates the EFI_FIRMWARE_VOLUME2_PROTOCOL instance.\r
+\r
+  @param Key        Pointer to a caller-allocated buffer that contains implementation-specific data that is\r
+                    used to track where to begin the search for the next file. The size of the buffer must be\r
+                    at least This->KeySize bytes long. To re-initialize the search and begin from the\r
+                    beginning of the firmware volume, the entire buffer must be cleared to zero. Other\r
+                    than clearing the buffer to initiate a new search, the caller must not modify the data in\r
+                    the buffer between calls to GetNextFile().\r
 \r
   @param FileType   Pointer to a caller-allocated\r
                     EFI_FV_FILETYPE. The GetNextFile() API can\r
@@ -576,16 +556,16 @@ EFI_STATUS
                     EFI_FV_FILE_ATTRIBUTES is defined in\r
                     ReadFile().\r
 \r
-  @param Size   Pointer to a caller-allocated UINTN. If a\r
-                matching file is found, the file's size is\r
-                returned in *Size. If no matching file is found,\r
-                Size is not modified.\r
+  @param Size       Pointer to a caller-allocated UINTN. If a\r
+                    matching file is found, the file's size is\r
+                    returned in *Size. If no matching file is found,\r
+                    Size is not modified.\r
 \r
-  @retval EFI_SUCCESS The output parameters are filled with data\r
-                      obtained from the first matching file that\r
-                      was found.\r
+  @retval EFI_SUCCESS       The output parameters are filled with data\r
+                            obtained from the first matching file that\r
+                            was found.\r
 \r
-  @retval FI_NOT_FOUND  No files of type FileType were found.\r
+  @retval FI_NOT_FOUND      No files of type FileType were found.\r
 \r
 \r
   @retval EFI_DEVICE_ERROR  A hardware error occurred when\r
@@ -619,28 +599,28 @@ EFI_STATUS
   this specification are required information types that all file\r
   systems must support.\r
 \r
-  @param This A pointer to the EFI_FIRMWARE_VOLUME2_PROTOCOL\r
-              instance that is the file handle the requested\r
-              information is for.\r
+  @param This             A pointer to the EFI_FIRMWARE_VOLUME2_PROTOCOL\r
+                          instance that is the file handle the requested\r
+                          information is for.\r
   \r
   @param InformationType  The type identifier for the\r
                           information being requested.\r
   \r
-  @param BufferSize   On input, the size of Buffer. On output,\r
-                      the amount of data returned in Buffer. In\r
-                      both cases, the size is measured in bytes.\r
+  @param BufferSize       On input, the size of Buffer. On output,\r
+                          the amount of data returned in Buffer. In\r
+                          both cases, the size is measured in bytes.\r
   \r
-  @param Buffer   A pointer to the data buffer to return. The\r
-                  buffer's type is indicated by InformationType.\r
+  @param Buffer           A pointer to the data buffer to return. The\r
+                          buffer's type is indicated by InformationType.\r
   \r
   \r
-  @retval EFI_SUCCESS   The information was retrieved.\r
+  @retval EFI_SUCCESS           The information was retrieved.\r
   \r
-  @retval EFI_UNSUPPORTED   The InformationType is not known.\r
+  @retval EFI_UNSUPPORTED       The InformationType is not known.\r
   \r
-  @retval EFI_NO_MEDIA  The device has no medium.\r
+  @retval EFI_NO_MEDIA          The device has no medium.\r
   \r
-  @retval EFI_DEVICE_ERROR  The device reported an error.\r
+  @retval EFI_DEVICE_ERROR      The device reported an error.\r
   \r
   @retval EFI_VOLUME_CORRUPTED  The file system structures are\r
                                 corrupted.\r
@@ -669,37 +649,37 @@ EFI_STATUS
   on the requested firmware volume.\r
 \r
 \r
-  @param This   A pointer to the EFI_FIRMWARE_VOLUME2_PROTOCOL\r
-                instance that is the file handle the information\r
-                is for.\r
+  @param This             A pointer to the EFI_FIRMWARE_VOLUME2_PROTOCOL\r
+                          instance that is the file handle the information\r
+                          is for.\r
 \r
   @param InformationType  The type identifier for the\r
                           information being set.\r
 \r
-  @param BufferSize   The size, in bytes, of Buffer.\r
+  @param BufferSize       The size, in bytes, of Buffer.\r
 \r
-  @param Buffer A pointer to the data buffer to write. The\r
-                buffer's type is indicated by InformationType.\r
+  @param Buffer           A pointer to the data buffer to write. The\r
+                          buffer's type is indicated by InformationType.\r
 \r
-  @retval EFI_SUCCESS The information was set.\r
+  @retval EFI_SUCCESS           The information was set.\r
 \r
-  @retval EFI_UNSUPPORTED The InformationType is not known.\r
+  @retval EFI_UNSUPPORTED       The InformationType is not known.\r
 \r
-  @retval EFI_NO_MEDIA  The device has no medium.\r
+  @retval EFI_NO_MEDIA          The device has no medium.\r
 \r
-  @retval EFI_DEVICE_ERROR  The device reported an error.\r
+  @retval EFI_DEVICE_ERROR      The device reported an error.\r
 \r
   @retval EFI_VOLUME_CORRUPTED  The file system structures are\r
                                 corrupted.\r
 \r
 \r
-  @retval EFI_WRITE_PROTECTED The media is read only.\r
+  @retval EFI_WRITE_PROTECTED   The media is read only.\r
 \r
-  @retval EFI_VOLUME_FULL   The volume is full.\r
+  @retval EFI_VOLUME_FULL       The volume is full.\r
 \r
-  @retval EFI_BAD_BUFFER_SIZE BufferSize is smaller than the\r
-                              size of the type indicated by\r
-                              InformationType.\r
+  @retval EFI_BAD_BUFFER_SIZE   BufferSize is smaller than the\r
+                                size of the type indicated by\r
+                                InformationType.\r
 \r
 **/\r
 typedef\r
@@ -713,6 +693,7 @@ EFI_STATUS
 \r
 \r
 /**\r
+  @par Protocol Description:\r
   The Firmware Volume Protocol contains the file-level\r
   abstraction to the firmware volume as well as some firmware\r
   volume attribute reporting and configuration services. The\r
@@ -726,45 +707,33 @@ EFI_STATUS
   Protocol.\r
 \r
   @param  GetVolumeAttributes   Retrieves volume capabilities\r
-                                and current settings. See the\r
-                                GetVolumeAttributes() function\r
-                                description.\r
+                                and current settings. \r
 \r
   @param  SetVolumeAttributes   Modifies the current settings of\r
-                                the firmware volume. See the\r
-                                SetVolumeAttributes() function\r
-                                description.\r
+                                the firmware volume.\r
 \r
-  @param  ReadFile  Reads an entire file from the firmware\r
-                    volume. See the ReadFile() function\r
-                    description.\r
+  @param  ReadFile              Reads an entire file from the firmware\r
+                                volume. \r
 \r
-  @param  ReadSection   Reads a single section from a file into\r
-                        a buffer.\r
+  @param  ReadSection           Reads a single section from a file into\r
+                                a buffer.\r
 \r
-  @param  WriteFile   Writes an entire file into the firmware\r
-                      volume. See the WriteFile() function\r
-                      description.\r
+  @param  WriteFile             Writes an entire file into the firmware\r
+                                volume. \r
 \r
-  @param  GetNextFile Provides service to allow searching the\r
-                      firmware volume. See the GetNextFile()\r
-                      function description.\r
+  @param  GetNextFile           Provides service to allow searching the\r
+                                firmware volume.\r
 \r
-  @param  KeySize   Data field that indicates the size in bytes\r
-                    of the Key input buffer for the\r
-                    GetNextFile() API.\r
+  @param  KeySize               Data field that indicates the size in bytes\r
+                                of the Key input buffer for the\r
+                                GetNextFile() API.\r
 \r
-  @param  ParentHandle  Handle of the parent firmware volume.\r
-                        Type EFI_HANDLE is defined in\r
-                        InstallProtocolInterface() in the UEFI\r
-                        2.0 specification.\r
+  @param  ParentHandle          Handle of the parent firmware volume.\r
 \r
-  @param  GetInfo   Gets the requested file or volume\r
-                    information. See the GetInfo() function\r
-                    description.\r
-  @param  SetInfo   Sets the requested file information. See the\r
-                    SetInfo() function description.\r
+  @param  GetInfo               Gets the requested file or volume\r
+                                information. \r
 \r
+  @param  SetInfo               Sets the requested file information.\r
 **/\r
 struct _EFI_FIRMWARE_VOLUME2_PROTOCOL {\r
   EFI_FV_GET_ATTRIBUTES   GetVolumeAttributes;\r