TianoCore EDK2 master
Loading...
Searching...
No Matches
CacheLib.h File Reference

Go to the source code of this file.

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

Definition in file CacheLib.h.

Macro Definition Documentation

◆ EFI_CACHE_UNCACHEABLE

#define EFI_CACHE_UNCACHEABLE   0

Definition at line 16 of file CacheLib.h.

◆ EFI_CACHE_WRITEBACK

#define EFI_CACHE_WRITEBACK   6

Definition at line 20 of file CacheLib.h.

◆ EFI_CACHE_WRITECOMBINING

#define EFI_CACHE_WRITECOMBINING   1

Definition at line 17 of file CacheLib.h.

◆ EFI_CACHE_WRITEPROTECTED

#define EFI_CACHE_WRITEPROTECTED   5

Definition at line 19 of file CacheLib.h.

◆ EFI_CACHE_WRITETHROUGH

#define EFI_CACHE_WRITETHROUGH   4

Definition at line 18 of file CacheLib.h.

Typedef Documentation

◆ EFI_MEMORY_CACHE_TYPE

typedef INT32 EFI_MEMORY_CACHE_TYPE

Definition at line 14 of file CacheLib.h.

Function Documentation

◆ ResetCacheAttributes()

EFI_STATUS EFIAPI ResetCacheAttributes ( VOID  )

Reset all the MTRRs to a known state.

Return values
EFI_SUCCESSAll MTRRs have been reset successfully.

Definition at line 582 of file CacheLib.c.

◆ SetCacheAttributes()

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.

Definition at line 377 of file CacheLib.c.