alder_lake_bios/Intel/AlderLake/AlderLakeChipsetPkg/Include/Library/NemMapLib.h

95 lines
3.0 KiB
C

/** @file
Header file for the NEM Map Library.
@copyright
Copyright (c) 2017 - 2018 Intel Corporation. All rights reserved
This software and associated documentation (if any) is furnished
under a license and may only be used or copied in accordance
with the terms of the license. Except as permitted by the
license, no part of this software or documentation may be
reproduced, stored in a retrieval system, or transmitted in any
form or by any means without the express written consent of
Intel Corporation.
This file contains an 'Intel Peripheral Driver' and is uniquely
identified as "Intel Reference Module" and is licensed for Intel
CPUs and chipsets under the terms of your license agreement with
Intel or your vendor. This file may be modified by the user, subject
to additional terms of the license agreement.
@par Specification
**/
#ifndef _NEM_MAP_LIB_H_
#define _NEM_MAP_LIB_H_
#include <Uefi.h>
/**
Determines the Intel Boot Block (IBB) base address and size.
@param[out] IbbBase The IBB base address.
@param[out] IbbSize The IBB size.
@retval EFI_SUCCESS The operation completed successfully.
@retval EFI_NOT_FOUND The gNemMapStructureHobGuid was not found.
@retval EFI_DEVICE_ERROR The GUID in the NEM map structure is invalid.
**/
EFI_STATUS
EFIAPI
GetIbbBaseAndSize (
OUT UINTN *IbbBase, OPTIONAL
OUT UINT32 *IbbSize OPTIONAL
);
/**
Determines the Non-Eviction Mode (NEM) region base address and size.
@param[out] NemBase The NEM region base address.
@param[out] NemSize The NEM region size.
@retval EFI_SUCCESS The operation completed successfully.
@retval EFI_NOT_FOUND The gNemMapStructureHobGuid was not found.
@retval EFI_DEVICE_ERROR The GUID in the NEM map structure is invalid.
**/
EFI_STATUS
EFIAPI
GetNemBaseAndSize (
OUT UINTN *NemBase, OPTIONAL
OUT UINT32 *NemSize OPTIONAL
);
/**
Determines the Temporary RAM (T-RAM) base address and size.
@param[out] TempRamBase The T-RAM base address.
@param[out] TempRamSize The T-RAM size.
@retval EFI_SUCCESS The operation completed successfully.
@retval EFI_NOT_FOUND The gNemMapStructureHobGuid was not found.
@retval EFI_DEVICE_ERROR The GUID in the NEM map structure is invalid.
**/
EFI_STATUS
EFIAPI
GetTempRamBaseAndSize (
OUT UINTN *TempRamBase, OPTIONAL
OUT UINT32 *TempRamSize OPTIONAL
);
/**
Determines the Firmware Interface Table (FIT) base address.
@param[out] FitBase The FIT base address.
@retval EFI_SUCCESS The operation completed successfully.
@retval EFI_NOT_FOUND The gNemMapStructureHobGuid was not found
@retval EFI_NOT_FOUND The FIT table could not be found (or is no longer available)
@retval EFI_DEVICE_ERROR The GUID in the NEM map structure is invalid.
**/
EFI_STATUS
EFIAPI
GetFitBase (
OUT UINTN *FitBase
);
#endif