Pip
Architecture-dependent parts of Pip: MAL, IAL and boot
Macros | Functions | Variables
armv7/boot/mmu.c File Reference
#include "coproc.h"
#include "reg.h"
#include "mmu.h"
#include "machine.h"
#include "string.h"
#include "debug.h"

Macros

#define STATIC_PT_COUNT   1
 

Functions

static unsigned __attribute__ ((aligned(0x4000)))
 
static unsigned __attribute__ ((aligned(0x400)))
 
static void mmu_init_caps (void)
 
unsigned mmu_make_ttbr (void *base, mmu_rgn_t irgn, mmu_rgn_t rgn, bool_t shareable, bool_t not_outer_shareable)
 
static void mmu_set_ttbcr (unsigned N)
 
mmu_sd_sp_t mmu_make_small_page (void *spbaddr, bool_t user, bool_t ro, bool_t xn, bool_t device, bool_t global)
 
mmu_sd_pt_t mmu_make_page_table (void *ptbaddr)
 
void mmu_debug (unsigned *tt)
 
mmu_sd_sp_t mmu_virt_to_sp (unsigned pd, unsigned va_)
 
unsigned mmu_virt_to_phys (unsigned pd, unsigned va_)
 
void mmu_map_small_page (unsigned int *tt, void *pa, void *va, bool_t user, bool_t ro, bool_t xn, bool_t device, bool_t global)
 
void mmu_map_anysection (unsigned int *tt, void *pa, void *va, bool_t user, bool_t ro, bool_t xn, bool_t device, bool_t global, int super)
 
void mmu_init (void)
 

Variables

 mmu_caps
 

Macro Definition Documentation

◆ STATIC_PT_COUNT

#define STATIC_PT_COUNT   1

Function Documentation

◆ __attribute__() [1/2]

static unsigned __attribute__ ( (aligned(0x4000))  )
static

◆ __attribute__() [2/2]

static unsigned __attribute__ ( (aligned(0x400))  )
static

◆ mmu_debug()

void mmu_debug ( unsigned *  tt)

◆ mmu_init()

void mmu_init ( void  )

◆ mmu_init_caps()

static void mmu_init_caps ( void  )
static

◆ mmu_make_page_table()

mmu_sd_pt_t mmu_make_page_table ( void *  ptbaddr)

◆ mmu_make_small_page()

mmu_sd_sp_t mmu_make_small_page ( void *  spbaddr,
bool_t  user,
bool_t  ro,
bool_t  xn,
bool_t  device,
bool_t  global 
)

◆ mmu_make_ttbr()

unsigned mmu_make_ttbr ( void *  base,
mmu_rgn_t  irgn,
mmu_rgn_t  rgn,
bool_t  shareable,
bool_t  not_outer_shareable 
)

◆ mmu_map_anysection()

void mmu_map_anysection ( unsigned int *  tt,
void *  pa,
void *  va,
bool_t  user,
bool_t  ro,
bool_t  xn,
bool_t  device,
bool_t  global,
int  super 
)

◆ mmu_map_small_page()

void mmu_map_small_page ( unsigned int *  tt,
void *  pa,
void *  va,
bool_t  user,
bool_t  ro,
bool_t  xn,
bool_t  device,
bool_t  global 
)

◆ mmu_set_ttbcr()

static void mmu_set_ttbcr ( unsigned  N)
static

◆ mmu_virt_to_phys()

unsigned mmu_virt_to_phys ( unsigned  pd,
unsigned  va_ 
)

◆ mmu_virt_to_sp()

mmu_sd_sp_t mmu_virt_to_sp ( unsigned  pd,
unsigned  va_ 
)

Variable Documentation

◆ mmu_caps

mmu_caps