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

Go to the source code of this file.

Macros

#define CACHE_SIZE_4_KB   (3UL)
 
#define CACHE_SIZE_8_KB   (4UL)
 
#define CACHE_SIZE_16_KB   (5UL)
 
#define CACHE_SIZE_32_KB   (6UL)
 
#define CACHE_SIZE_64_KB   (7UL)
 
#define CACHE_SIZE_128_KB   (8UL)
 
#define CACHE_ASSOCIATIVITY_DIRECT   (0UL)
 
#define CACHE_ASSOCIATIVITY_4_WAY   (2UL)
 
#define CACHE_ASSOCIATIVITY_8_WAY   (3UL)
 
#define CACHE_PRESENT   (0UL)
 
#define CACHE_NOT_PRESENT   (1UL)
 
#define CACHE_LINE_LENGTH_32_BYTES   (2UL)
 
#define SIZE_FIELD_TO_CACHE_SIZE(x)   (((x) >> 6) & 0x0F)
 
#define SIZE_FIELD_TO_CACHE_ASSOCIATIVITY(x)   (((x) >> 3) & 0x07)
 
#define SIZE_FIELD_TO_CACHE_PRESENCE(x)   (((x) >> 2) & 0x01)
 
#define SIZE_FIELD_TO_CACHE_LINE_LENGTH(x)   (((x) >> 0) & 0x03)
 
#define DATA_CACHE_SIZE_FIELD(x)   (((x) >> 12) & 0x0FFF)
 
#define INSTRUCTION_CACHE_SIZE_FIELD(x)   (((x) >> 0) & 0x0FFF)
 
#define DATA_CACHE_SIZE(x)   (SIZE_FIELD_TO_CACHE_SIZE(DATA_CACHE_SIZE_FIELD(x)))
 
#define DATA_CACHE_ASSOCIATIVITY(x)   (SIZE_FIELD_TO_CACHE_ASSOCIATIVITY(DATA_CACHE_SIZE_FIELD(x)))
 
#define DATA_CACHE_PRESENT(x)   (SIZE_FIELD_TO_CACHE_PRESENCE(DATA_CACHE_SIZE_FIELD(x)))
 
#define DATA_CACHE_LINE_LENGTH(x)   (SIZE_FIELD_TO_CACHE_LINE_LENGTH(DATA_CACHE_SIZE_FIELD(x)))
 
#define INSTRUCTION_CACHE_SIZE(x)   (SIZE_FIELD_TO_CACHE_SIZE(INSTRUCTION_CACHE_SIZE_FIELD(x)))
 
#define INSTRUCTION_CACHE_ASSOCIATIVITY(x)   (SIZE_FIELD_TO_CACHE_ASSOCIATIVITY(INSTRUCTION_CACHE_SIZE_FIELD(x)))
 
#define INSTRUCTION_CACHE_PRESENT(x)   (SIZE_FIELD_TO_CACHE_PRESENCE(INSTRUCTION_CACHE_SIZE_FIELD(x)))
 
#define INSTRUCTION_CACHE_LINE_LENGTH(x)   (SIZE_FIELD_TO_CACHE_LINE_LENGTH(INSTRUCTION_CACHE_SIZE_FIELD(x)))
 
#define CACHE_TYPE(x)   (((x) >> 25) & 0x0F)
 
#define CACHE_TYPE_WRITE_BACK   (0x0EUL)
 
#define CACHE_ARCHITECTURE(x)   (((x) >> 24) & 0x01)
 
#define CACHE_ARCHITECTURE_UNIFIED   (0UL)
 
#define CACHE_ARCHITECTURE_SEPARATE   (1UL)
 

Functions

VOID CPSRMaskInsert (IN UINT32 Mask, IN UINT32 Value)
 
UINT32 CPSRRead (VOID)
 

Detailed Description

ArmLibPrivate.h

Copyright (c) 2020, NUVIA Inc. All rights reserved.
Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.

SPDX-License-Identifier: BSD-2-Clause-Patent

Definition in file ArmLibPrivate.h.

Macro Definition Documentation

◆ CACHE_ARCHITECTURE

#define CACHE_ARCHITECTURE (   x)    (((x) >> 24) & 0x01)

Definition at line 51 of file ArmLibPrivate.h.

◆ CACHE_ARCHITECTURE_SEPARATE

#define CACHE_ARCHITECTURE_SEPARATE   (1UL)

Definition at line 53 of file ArmLibPrivate.h.

◆ CACHE_ARCHITECTURE_UNIFIED

#define CACHE_ARCHITECTURE_UNIFIED   (0UL)

Definition at line 52 of file ArmLibPrivate.h.

◆ CACHE_ASSOCIATIVITY_4_WAY

#define CACHE_ASSOCIATIVITY_4_WAY   (2UL)

Definition at line 22 of file ArmLibPrivate.h.

◆ CACHE_ASSOCIATIVITY_8_WAY

#define CACHE_ASSOCIATIVITY_8_WAY   (3UL)

Definition at line 23 of file ArmLibPrivate.h.

◆ CACHE_ASSOCIATIVITY_DIRECT

#define CACHE_ASSOCIATIVITY_DIRECT   (0UL)

Definition at line 21 of file ArmLibPrivate.h.

◆ CACHE_LINE_LENGTH_32_BYTES

#define CACHE_LINE_LENGTH_32_BYTES   (2UL)

Definition at line 28 of file ArmLibPrivate.h.

◆ CACHE_NOT_PRESENT

#define CACHE_NOT_PRESENT   (1UL)

Definition at line 26 of file ArmLibPrivate.h.

◆ CACHE_PRESENT

#define CACHE_PRESENT   (0UL)

Definition at line 25 of file ArmLibPrivate.h.

◆ CACHE_SIZE_128_KB

#define CACHE_SIZE_128_KB   (8UL)

Definition at line 19 of file ArmLibPrivate.h.

◆ CACHE_SIZE_16_KB

#define CACHE_SIZE_16_KB   (5UL)

Definition at line 16 of file ArmLibPrivate.h.

◆ CACHE_SIZE_32_KB

#define CACHE_SIZE_32_KB   (6UL)

Definition at line 17 of file ArmLibPrivate.h.

◆ CACHE_SIZE_4_KB

#define CACHE_SIZE_4_KB   (3UL)

Definition at line 14 of file ArmLibPrivate.h.

◆ CACHE_SIZE_64_KB

#define CACHE_SIZE_64_KB   (7UL)

Definition at line 18 of file ArmLibPrivate.h.

◆ CACHE_SIZE_8_KB

#define CACHE_SIZE_8_KB   (4UL)

Definition at line 15 of file ArmLibPrivate.h.

◆ CACHE_TYPE

#define CACHE_TYPE (   x)    (((x) >> 25) & 0x0F)

Definition at line 48 of file ArmLibPrivate.h.

◆ CACHE_TYPE_WRITE_BACK

#define CACHE_TYPE_WRITE_BACK   (0x0EUL)

Definition at line 49 of file ArmLibPrivate.h.

◆ DATA_CACHE_ASSOCIATIVITY

#define DATA_CACHE_ASSOCIATIVITY (   x)    (SIZE_FIELD_TO_CACHE_ASSOCIATIVITY(DATA_CACHE_SIZE_FIELD(x)))

Definition at line 39 of file ArmLibPrivate.h.

◆ DATA_CACHE_LINE_LENGTH

#define DATA_CACHE_LINE_LENGTH (   x)    (SIZE_FIELD_TO_CACHE_LINE_LENGTH(DATA_CACHE_SIZE_FIELD(x)))

Definition at line 41 of file ArmLibPrivate.h.

◆ DATA_CACHE_PRESENT

#define DATA_CACHE_PRESENT (   x)    (SIZE_FIELD_TO_CACHE_PRESENCE(DATA_CACHE_SIZE_FIELD(x)))

Definition at line 40 of file ArmLibPrivate.h.

◆ DATA_CACHE_SIZE

#define DATA_CACHE_SIZE (   x)    (SIZE_FIELD_TO_CACHE_SIZE(DATA_CACHE_SIZE_FIELD(x)))

Definition at line 38 of file ArmLibPrivate.h.

◆ DATA_CACHE_SIZE_FIELD

#define DATA_CACHE_SIZE_FIELD (   x)    (((x) >> 12) & 0x0FFF)

Definition at line 35 of file ArmLibPrivate.h.

◆ INSTRUCTION_CACHE_ASSOCIATIVITY

#define INSTRUCTION_CACHE_ASSOCIATIVITY (   x)    (SIZE_FIELD_TO_CACHE_ASSOCIATIVITY(INSTRUCTION_CACHE_SIZE_FIELD(x)))

Definition at line 44 of file ArmLibPrivate.h.

◆ INSTRUCTION_CACHE_LINE_LENGTH

#define INSTRUCTION_CACHE_LINE_LENGTH (   x)    (SIZE_FIELD_TO_CACHE_LINE_LENGTH(INSTRUCTION_CACHE_SIZE_FIELD(x)))

Definition at line 46 of file ArmLibPrivate.h.

◆ INSTRUCTION_CACHE_PRESENT

#define INSTRUCTION_CACHE_PRESENT (   x)    (SIZE_FIELD_TO_CACHE_PRESENCE(INSTRUCTION_CACHE_SIZE_FIELD(x)))

Definition at line 45 of file ArmLibPrivate.h.

◆ INSTRUCTION_CACHE_SIZE

#define INSTRUCTION_CACHE_SIZE (   x)    (SIZE_FIELD_TO_CACHE_SIZE(INSTRUCTION_CACHE_SIZE_FIELD(x)))

Definition at line 43 of file ArmLibPrivate.h.

◆ INSTRUCTION_CACHE_SIZE_FIELD

#define INSTRUCTION_CACHE_SIZE_FIELD (   x)    (((x) >> 0) & 0x0FFF)

Definition at line 36 of file ArmLibPrivate.h.

◆ SIZE_FIELD_TO_CACHE_ASSOCIATIVITY

#define SIZE_FIELD_TO_CACHE_ASSOCIATIVITY (   x)    (((x) >> 3) & 0x07)

Definition at line 31 of file ArmLibPrivate.h.

◆ SIZE_FIELD_TO_CACHE_LINE_LENGTH

#define SIZE_FIELD_TO_CACHE_LINE_LENGTH (   x)    (((x) >> 0) & 0x03)

Definition at line 33 of file ArmLibPrivate.h.

◆ SIZE_FIELD_TO_CACHE_PRESENCE

#define SIZE_FIELD_TO_CACHE_PRESENCE (   x)    (((x) >> 2) & 0x01)

Definition at line 32 of file ArmLibPrivate.h.

◆ SIZE_FIELD_TO_CACHE_SIZE

#define SIZE_FIELD_TO_CACHE_SIZE (   x)    (((x) >> 6) & 0x0F)

Definition at line 30 of file ArmLibPrivate.h.