RTEMS  5.0.0
Data Structures | Macros | Typedefs | Functions | Variables
tlb.h File Reference
#include <arch/mm/tte.h>
#include <arch/mm/mmu.h>
#include <arch/mm/page.h>
#include <arch/asm.h>
#include <arch/barrier.h>
#include <arch/types.h>
#include <arch/register.h>
#include <arch/cpu.h>

Go to the source code of this file.

Data Structures

union  tlb_context_reg
 
union  tlb_tag_read_reg
 
union  tlb_demap_addr
 
union  tlb_sfsr_reg
 

Macros

#define MEM_CONTEXT_KERNEL   0
 
#define MEM_CONTEXT_TEMP   1
 
#define PAGESIZE_8K   0
 
#define PAGESIZE_64K   1
 
#define PAGESIZE_512K   2
 
#define PAGESIZE_4M   3
 
#define KERNEL_PAGE_WIDTH   22 /* 4M */
 
#define TLB_DEMAP_PAGE   0
 
#define TLB_DEMAP_CONTEXT   1
 
#define TLB_DEMAP_TYPE_SHIFT   6
 
#define TLB_DEMAP_PRIMARY   0
 
#define TLB_DEMAP_SECONDARY   1
 
#define TLB_DEMAP_NUCLEUS   2
 
#define TLB_DEMAP_CONTEXT_SHIFT   4
 
#define TLB_TAG_ACCESS_CONTEXT_SHIFT   0
 
#define TLB_TAG_ACCESS_CONTEXT_MASK   ((1 << 13) - 1)
 
#define TLB_TAG_ACCESS_VPN_SHIFT   13
 

Typedefs

typedef union tlb_context_reg tlb_context_reg_t
 
typedef tte_data_t tlb_data_t
 
typedef union tlb_tag_read_reg tlb_tag_read_reg_t
 
typedef union tlb_tag_read_reg tlb_tag_access_reg_t
 
typedef union tlb_demap_addr tlb_demap_addr_t
 
typedef union tlb_sfsr_reg tlb_sfsr_reg_t
 

Functions

void fast_instruction_access_mmu_miss (unative_t, istate_t *)
 
void fast_data_access_mmu_miss (tlb_tag_access_reg_t, istate_t *)
 
void fast_data_access_protection (tlb_tag_access_reg_t, istate_t *)
 
void dtlb_insert_mapping (uintptr_t, uintptr_t, int, bool, bool)
 
void dump_sfsr_and_sfar (void)
 
void describe_dmmu_fault (void)
 

Variables

unsigned long
 
unsigned context
 
uint64_t vpn
 
unsigned __pad0__
 
unsigned e
 
unsigned ct
 
unsigned pr
 
unsigned w
 
unsigned ow
 
unsigned fv
 

Variable Documentation

◆ __pad0__

unsigned __pad0__

Zero.

◆ context

unsigned context

Context/ASID.

Context identifier.

Context register selection.

◆ ct

unsigned ct

Context Register selection.

◆ e

unsigned e

Side-effect bit.

◆ fv

unsigned fv

Fault Valid bit.

◆ ow

unsigned ow

Overwrite bit.

◆ pr

unsigned pr

Privilege bit.

◆ vpn

uint64_t vpn

Virtual Address bits 63:13.

◆ w

unsigned w

Write bit.