]> git.proxmox.com Git - mirror_edk2.git/blob - MdePkg/Include/Ppi/FirmwareVolumeInfo.h
1a7487bce06007ec2172bc66e0ff4bc69217c089
[mirror_edk2.git] / MdePkg / Include / Ppi / FirmwareVolumeInfo.h
1 /** @file
2 This file provides location and format of a firmware volume.
3
4 Copyright (c) 2006 - 2007, Intel Corporation
5 All rights reserved. This program and the accompanying materials
6 are licensed and made available under the terms and conditions of the BSD License
7 which accompanies this distribution. The full text of the license may be found at
8 http://opensource.org/licenses/bsd-license.php
9
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12
13 @par Revision Reference:
14 This PPI is defined in PI.
15 Version 1.00
16
17 **/
18
19 #ifndef __EFI_PEI_FIRMWARE_VOLUME_INFO_H__
20 #define __EFI_PEI_FIRMWARE_VOLUME_INFO_H__
21
22
23
24 #define EFI_PEI_FIRMWARE_VOLUME_INFO_PPI_GUID \
25 { 0x49edb1c1, 0xbf21, 0x4761, { 0xbb, 0x12, 0xeb, 0x0, 0x31, 0xaa, 0xbb, 0x39 } }
26
27 typedef struct _EFI_PEI_FIRMWARE_VOLUME_INFO_PPI EFI_PEI_FIRMWARE_VOLUME_INFO_PPI;
28
29 /**
30 @par Ppi Description:
31 This PPI describes the location and format of a firmware volume.
32 The FvFormat can be EFI_FIRMWARE_FILE_SYSTEM2_GUID or the GUID for
33 a user-defined format. The EFI_FIRMWARE_FILE_SYSTEM2_GUID is
34 the PI Firmware Volume format.
35
36 @param FvFormat Unique identifier of the format of the memory-mapped firmware volume.
37
38 @param FvInfo Points to a buffer which allows the EFI_PEI_FIRMWARE_VOLUME_PPI to
39 process the volume. The format of this buffer is
40 specific to the FvFormat. For memory-mapped firmware volumes,
41 this typically points to the first byte of the firmware volume.
42
43 @param FvInfoSize Size of the data provided by FvInfo. For memory-mapped firmware volumes,
44 this is typically the size of the firmware volume.
45
46 @param ParentFvName If the firmware volume originally came from a firmware file,
47 then these point to the parent firmware volume
48 name and firmware volume file. If it did not originally come
49 from a firmware file, these should be NULL.
50
51 @param ParentFileName If the firmware volume originally came from a firmware file,
52 then these point to the parent firmware volume
53 name and firmware volume file. If it did not originally come
54 from a firmware file, these should be NULL.
55
56 **/
57 struct _EFI_PEI_FIRMWARE_VOLUME_INFO_PPI {
58 EFI_GUID FvFormat;
59 VOID *FvInfo;
60 UINT32 FvInfoSize;
61 EFI_GUID *ParentFvName;
62 EFI_GUID *ParentFileName;
63 };
64
65 extern EFI_GUID gEfiPeiFirmwareVolumeInfoPpiGuid;
66
67 #endif
68