TianoCore EDK2 master
Loading...
Searching...
No Matches
FwBlockServiceSmm.c
Go to the documentation of this file.
1
11#include <Library/DebugLib.h>
12#include <Library/PcdLib.h>
14#include <Protocol/DevicePath.h>
16
17#include "FwBlockService.h"
18
19VOID
20InstallProtocolInterfaces (
22 )
23{
24 EFI_HANDLE FvbHandle;
25 EFI_STATUS Status;
26
27 ASSERT (FeaturePcdGet (PcdSmmSmramRequire));
28
29 //
30 // There is no SMM service that can install multiple protocols in the SMM
31 // protocol database in one go.
32 //
33 // The SMM Firmware Volume Block protocol structure is the same as the
34 // Firmware Volume Block protocol structure.
35 //
36 FvbHandle = NULL;
37 DEBUG ((DEBUG_INFO, "Installing QEMU flash SMM FVB\n"));
39 &FvbHandle,
40 &gEfiSmmFirmwareVolumeBlockProtocolGuid,
42 &FvbDevice->FwVolBlockInstance
43 );
44 ASSERT_EFI_ERROR (Status);
45
47 &FvbHandle,
48 &gEfiDevicePathProtocolGuid,
50 FvbDevice->DevicePath
51 );
52 ASSERT_EFI_ERROR (Status);
53}
54
55VOID
56InstallVirtualAddressChangeHandler (
57 VOID
58 )
59{
60 //
61 // Nothing.
62 //
63}
64
66MarkIoMemoryRangeForRuntimeAccess (
67 IN EFI_PHYSICAL_ADDRESS BaseAddress,
68 IN UINTN Length
69 )
70{
71 //
72 // Nothing
73 //
74
75 return EFI_SUCCESS;
76}
77
78VOID
79SetPcdFlashNvStorageBaseAddresses (
80 VOID
81 )
82{
83 //
84 // Do nothing.
85 //
86}
UINT64 UINTN
#define NULL
Definition: Base.h:319
#define IN
Definition: Base.h:279
#define ASSERT_EFI_ERROR(StatusParameter)
Definition: DebugLib.h:462
#define DEBUG(Expression)
Definition: DebugLib.h:434
#define FeaturePcdGet(TokenName)
Definition: PcdLib.h:50
EFI_SMM_SYSTEM_TABLE2 * gSmst
UINT64 EFI_PHYSICAL_ADDRESS
Definition: UefiBaseType.h:50
RETURN_STATUS EFI_STATUS
Definition: UefiBaseType.h:29
VOID * EFI_HANDLE
Definition: UefiBaseType.h:33
#define EFI_SUCCESS
Definition: UefiBaseType.h:112
@ EFI_NATIVE_INTERFACE
Definition: UefiSpec.h:1193
EFI_INSTALL_PROTOCOL_INTERFACE SmmInstallProtocolInterface
Definition: PiSmmCis.h:185