TianoCore EDK2 master
|
#include <Library/SmmMemLib.h>
#include <Library/UefiBootServicesTableLib.h>
#include "FaultTolerantWrite.h"
#include "FaultTolerantWriteSmmCommon.h"
Go to the source code of this file.
Functions | |
BOOLEAN | FtwSmmIsPrimaryBufferValid (IN EFI_PHYSICAL_ADDRESS Buffer, IN UINT64 Length) |
UINT32 | FtwCalculateCrc32 (IN VOID *Buffer, IN UINTN Length) |
VOID | FtwNotifySmmReady (VOID) |
EFI_STATUS EFIAPI | SmmFaultTolerantWriteInitialize (IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable) |
Parts of the SMM/MM implementation that are specific to traditional MM
Copyright (c) 2011 - 2024, Intel Corporation. All rights reserved.
Copyright (c) 2018, Linaro, Ltd. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
Definition in file FaultTolerantWriteTraditionalMm.c.
Internal implementation of CRC32. Depending on the execution context (traditional SMM or DXE vs standalone MM), this function is implemented via a call to the CalculateCrc32 () boot service, or via a library call.
If Buffer is NULL, then ASSERT(). If Length is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT().
[in] | Buffer | A pointer to the buffer on which the 32-bit CRC is to be computed. |
[in] | Length | The number of bytes in the buffer Data. |
Crc32 | The 32-bit CRC was computed for the data buffer. |
Definition at line 54 of file FaultTolerantWriteTraditionalMm.c.
VOID FtwNotifySmmReady | ( | VOID | ) |
Notify the system that the SMM FTW driver is ready.
Definition at line 72 of file FaultTolerantWriteTraditionalMm.c.
BOOLEAN FtwSmmIsPrimaryBufferValid | ( | IN EFI_PHYSICAL_ADDRESS | Buffer, |
IN UINT64 | Length | ||
) |
This function checks if the Primary Buffer is valid per processor architecture and does not overlap with SMRAM.
Buffer | The buffer start address to be checked. |
Length | The buffer length to be checked. |
TRUE | This buffer is valid per processor architecture and does not overlap with SMRAM. |
FALSE | This buffer is not valid per processor architecture or overlaps with SMRAM. |
Definition at line 29 of file FaultTolerantWriteTraditionalMm.c.
EFI_STATUS EFIAPI SmmFaultTolerantWriteInitialize | ( | IN EFI_HANDLE | ImageHandle, |
IN EFI_SYSTEM_TABLE * | SystemTable | ||
) |
This function is the entry point of the Fault Tolerant Write driver.
[in] | ImageHandle | A handle for the image that is initializing this driver |
[in] | SystemTable | A pointer to the EFI system table |
EFI_SUCCESS | The initialization finished successfully. |
EFI_OUT_OF_RESOURCES | Allocate memory error |
EFI_INVALID_PARAMETER | Workspace or Spare block does not exist |
Definition at line 102 of file FaultTolerantWriteTraditionalMm.c.