]> git.proxmox.com Git - mirror_edk2.git/blob - OvmfPkg/Include/Library/PlatformFvbLib.h
BaseTools: Library hashing fix and optimization for --hash feature
[mirror_edk2.git] / OvmfPkg / Include / Library / PlatformFvbLib.h
1 /** @file
2 Library to define platform customization functions for a
3 Firmare Volume Block driver.
4
5 Copyright (c) 2009 - 2011, Intel Corporation. All rights reserved.<BR>
6 SPDX-License-Identifier: BSD-2-Clause-Patent
7
8 **/
9
10 #ifndef __PLATFORM_FVB_LIB__
11 #define __PLATFORM_FVB_LIB__
12
13 #include <Protocol/FirmwareVolumeBlock.h>
14
15 /**
16 This function will be called following a call to the
17 EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL Read function.
18
19 @param[in] This The EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL instance.
20 @param[in] Lba The starting logical block index
21 from which to read.
22 @param[in] Offset Offset into the block at which to begin reading.
23 @param[in] NumBytes The number of bytes read.
24 @param[in] Buffer Pointer to the buffer that was read, and will be
25 returned to the caller.
26
27 **/
28 VOID
29 EFIAPI
30 PlatformFvbDataRead (
31 IN CONST EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL *This,
32 IN EFI_LBA Lba,
33 IN UINTN Offset,
34 IN UINTN NumBytes,
35 IN UINT8 *Buffer
36 );
37
38
39 /**
40 This function will be called following a call to the
41 EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL Write function.
42
43 @param[in] This EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL instance.
44 @param[in] Lba The starting logical block index to written to.
45 @param[in] Offset Offset into the block at which to begin writing.
46 @param[in] NumBytes The number of bytes written.
47 @param[in] Buffer Pointer to the buffer that was written.
48
49 **/
50 VOID
51 EFIAPI
52 PlatformFvbDataWritten (
53 IN CONST EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL *This,
54 IN EFI_LBA Lba,
55 IN UINTN Offset,
56 IN UINTN NumBytes,
57 IN UINT8 *Buffer
58 );
59
60
61 /**
62 This function will be called following a call to the
63 EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL Erase function.
64
65 @param This Indicates the EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL
66 instance.
67 @param List The variable argument list as documented for
68 the EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL Erase
69 function.
70
71 **/
72 VOID
73 EFIAPI
74 PlatformFvbBlocksErased (
75 IN CONST EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL *This,
76 IN VA_LIST List
77 );
78
79
80 #endif
81