IntelFsp2Pkg[all]  0.1
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
CacheLib.h File Reference

Macros

#define EFI_CACHE_UNCACHEABLE   0
 
#define EFI_CACHE_WRITECOMBINING   1
 
#define EFI_CACHE_WRITETHROUGH   4
 
#define EFI_CACHE_WRITEPROTECTED   5
 
#define EFI_CACHE_WRITEBACK   6
 

Typedefs

typedef INT32 EFI_MEMORY_CACHE_TYPE
 

Functions

EFI_STATUS EFIAPI ResetCacheAttributes (VOID)
 
EFI_STATUS EFIAPI SetCacheAttributes (IN EFI_PHYSICAL_ADDRESS MemoryAddress, IN UINT64 MemoryLength, IN EFI_MEMORY_CACHE_TYPE MemoryCacheType)
 

Detailed Description

Copyright (c) 2014, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent

Macro Definition Documentation

#define EFI_CACHE_UNCACHEABLE   0
#define EFI_CACHE_WRITEBACK   6
#define EFI_CACHE_WRITECOMBINING   1
#define EFI_CACHE_WRITEPROTECTED   5
#define EFI_CACHE_WRITETHROUGH   4

Typedef Documentation

typedef INT32 EFI_MEMORY_CACHE_TYPE

Function Documentation

EFI_STATUS EFIAPI ResetCacheAttributes ( VOID  )

Reset all the MTRRs to a known state.

Return values
EFI_SUCCESSAll MTRRs have been reset successfully.
EFI_STATUS EFIAPI SetCacheAttributes ( IN EFI_PHYSICAL_ADDRESS  MemoryAddress,
IN UINT64  MemoryLength,
IN EFI_MEMORY_CACHE_TYPE  MemoryCacheType 
)

Given the memory range and cache type, programs the MTRRs.

Parameters
[in]MemoryAddressBase Address of Memory to program MTRR.
[in]MemoryLengthLength of Memory to program MTRR.
[in]MemoryCacheTypeCache Type.
Return values
EFI_SUCCESSMtrr are set successfully.
EFI_LOAD_ERRORNo empty MTRRs to use.
EFI_INVALID_PARAMETERThe input parameter is not valid.
othersAn error occurs when setting MTTR.