OvmfPkg/MemEncryptSevLib: find pages of initial SMRAM save state map
[mirror_edk2.git] / OvmfPkg / Include / Library / PlatformFvbLib.h
CommitLineData
921d5b47 1/** @file\r
2 Library to define platform customization functions for a\r
3 Firmare Volume Block driver.\r
4\r
9529d0ff 5 Copyright (c) 2009 - 2011, Intel Corporation. All rights reserved.<BR>\r
56d7640a 6 This program and the accompanying materials\r
921d5b47 7 are licensed and made available under the terms and conditions of the BSD License\r
8 which accompanies this distribution. The full text of the license may be found at\r
9 http://opensource.org/licenses/bsd-license.php\r
10\r
11 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
12 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
13\r
14**/\r
15\r
16#ifndef __PLATFORM_FVB_LIB__\r
17#define __PLATFORM_FVB_LIB__\r
18\r
19#include <Protocol/FirmwareVolumeBlock.h>\r
20\r
21/**\r
22 This function will be called following a call to the\r
3a4ddfc5 23 EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL Read function.\r
921d5b47 24\r
3a4ddfc5 25 @param[in] This The EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL instance.\r
26 @param[in] Lba The starting logical block index\r
27 from which to read.\r
28 @param[in] Offset Offset into the block at which to begin reading.\r
29 @param[in] NumBytes The number of bytes read.\r
30 @param[in] Buffer Pointer to the buffer that was read, and will be\r
31 returned to the caller.\r
32\r
33**/\r
34VOID\r
35EFIAPI\r
36PlatformFvbDataRead (\r
37 IN CONST EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL *This,\r
38 IN EFI_LBA Lba,\r
39 IN UINTN Offset,\r
40 IN UINTN NumBytes,\r
41 IN UINT8 *Buffer\r
42 );\r
43\r
44\r
45/**\r
46 This function will be called following a call to the\r
47 EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL Write function.\r
48\r
49 @param[in] This EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL instance.\r
921d5b47 50 @param[in] Lba The starting logical block index to written to.\r
9529d0ff 51 @param[in] Offset Offset into the block at which to begin writing.\r
52 @param[in] NumBytes The number of bytes written.\r
53 @param[in] Buffer Pointer to the buffer that was written.\r
921d5b47 54\r
55**/\r
56VOID\r
57EFIAPI\r
58PlatformFvbDataWritten (\r
949b0f3b 59 IN CONST EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL *This,\r
60 IN EFI_LBA Lba,\r
61 IN UINTN Offset,\r
62 IN UINTN NumBytes,\r
63 IN UINT8 *Buffer\r
921d5b47 64 );\r
65\r
3a4ddfc5 66\r
67/**\r
68 This function will be called following a call to the\r
69 EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL Erase function.\r
70\r
71 @param This Indicates the EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL\r
72 instance.\r
73 @param List The variable argument list as documented for\r
74 the EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL Erase\r
75 function.\r
76\r
77**/\r
78VOID\r
79EFIAPI\r
80PlatformFvbBlocksErased (\r
81 IN CONST EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL *This,\r
82 IN VA_LIST List\r
83 );\r
84\r
85\r
921d5b47 86#endif\r
87\r