]> git.proxmox.com Git - mirror_edk2.git/blob - OvmfPkg/Include/Library/PlatformFvbLib.h
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[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 This function will be called following a call to the
40 EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL Write function.
41
42 @param[in] This EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL instance.
43 @param[in] Lba The starting logical block index to written to.
44 @param[in] Offset Offset into the block at which to begin writing.
45 @param[in] NumBytes The number of bytes written.
46 @param[in] Buffer Pointer to the buffer that was written.
47
48 **/
49 VOID
50 EFIAPI
51 PlatformFvbDataWritten (
52 IN CONST EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL *This,
53 IN EFI_LBA Lba,
54 IN UINTN Offset,
55 IN UINTN NumBytes,
56 IN UINT8 *Buffer
57 );
58
59 /**
60 This function will be called following a call to the
61 EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL Erase function.
62
63 @param This Indicates the EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL
64 instance.
65 @param List The variable argument list as documented for
66 the EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL Erase
67 function.
68
69 **/
70 VOID
71 EFIAPI
72 PlatformFvbBlocksErased (
73 IN CONST EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL *This,
74 IN VA_LIST List
75 );
76
77 #endif