3 Copyright (c) 2007, Intel Corporation. All rights reserved.<BR>
4 This program and the accompanying materials
5 are licensed and made available under the terms and conditions of the BSD License
6 which accompanies this distribution. The full text of the license may be found at
7 http://opensource.org/licenses/bsd-license.php
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
18 PI 1.0 spec definition.
22 #ifndef __FIRMWARE_VOLUME_H__
23 #define __FIRMWARE_VOLUME_H__
25 EFI_FORWARD_DECLARATION (EFI_PEI_FIRMWARE_VOLUME_PPI
);
28 // Statements that include other files
30 #include "EfiFirmwareVolumeHeader.h"
31 #include "EfiFirmwareFileSystem.h"
32 #include "EfiFirmwareVolume.h"
34 typedef VOID
* EFI_PEI_FILE_HANDLE
;
35 typedef VOID
* EFI_PEI_FV_HANDLE
;
40 EFI_FV_FILETYPE FileType
;
41 EFI_FV_FILE_ATTRIBUTES FileAttributes
;
47 EFI_FVB_ATTRIBUTES FvAttributes
;
58 (EFIAPI
*EFI_PEI_FV_PROCESS_FV
) (
59 IN CONST EFI_PEI_FIRMWARE_VOLUME_PPI
*This
,
62 OUT EFI_PEI_FV_HANDLE
*FvHandle
68 (EFIAPI
*EFI_PEI_FV_FIND_FILE_TYPE
) (
69 IN CONST EFI_PEI_FIRMWARE_VOLUME_PPI
*This
,
70 IN EFI_FV_FILETYPE SearchType
,
71 IN EFI_PEI_FV_HANDLE FvHandle
,
72 IN OUT EFI_PEI_FILE_HANDLE
*FileHandle
77 (EFIAPI
*EFI_PEI_FV_FIND_FILE_NAME
) (
78 IN CONST EFI_PEI_FIRMWARE_VOLUME_PPI
*This
,
79 IN CONST EFI_GUID
*FileName
,
80 IN EFI_PEI_FV_HANDLE FvHandle
,
81 OUT EFI_PEI_FILE_HANDLE
*FileHandle
86 (EFIAPI
*EFI_PEI_FV_GET_FILE_INFO
) (
87 IN CONST EFI_PEI_FIRMWARE_VOLUME_PPI
*This
,
88 IN EFI_PEI_FILE_HANDLE FileHandle
,
89 OUT EFI_FV_FILE_INFO
*FileInfo
94 (EFIAPI
*EFI_PEI_FV_GET_INFO
)(
95 IN CONST EFI_PEI_FIRMWARE_VOLUME_PPI
*This
,
96 IN EFI_PEI_FV_HANDLE FvHandle
,
97 OUT EFI_FV_INFO
*VolumeInfo
102 (EFIAPI
*EFI_PEI_FV_FIND_SECTION
) (
103 IN CONST EFI_PEI_FIRMWARE_VOLUME_PPI
*This
,
104 IN EFI_SECTION_TYPE SearchType
,
105 IN EFI_PEI_FILE_HANDLE FileHandle
,
106 OUT VOID
**SectionData
109 struct _EFI_PEI_FIRMWARE_VOLUME_PPI
{
110 EFI_PEI_FV_PROCESS_FV ProcessVolume
;
111 EFI_PEI_FV_FIND_FILE_TYPE FindFileByType
;
112 EFI_PEI_FV_FIND_FILE_NAME FindFileByName
;
113 EFI_PEI_FV_GET_FILE_INFO GetFileInfo
;
114 EFI_PEI_FV_GET_INFO GetVolumeInfo
;
115 EFI_PEI_FV_FIND_SECTION FindSectionByType
;