| 
    POK(kernelpart)
    
   | 
 
Memory management in SPARC. More...
#include <types.h>#include <errno.h>#include <libc.h>#include <bsp.h>#include <core/sched.h>#include <arch.h>#include "thread.h"#include "space.h"#include "sparc_conf.h"#include "context_offset.h"#include "ioports.h"Go to the source code of this file.
Data Structures | |
| struct | pok_space | 
Macros | |
| #define | KERNEL_STACK_SIZE 8192 | 
Functions | |
| ptd mmu_contexts_tab[POK_CONFIG_NB_PARTITIONS] | __attribute__ ((aligned(POK_CONFIG_NB_PARTITIONS *sizeof(ptd)))) | 
| ptd mmu_level1_tab[POK_CONFIG_NB_PARTITIONS][MM_LVL1_ENTRIES_NBR] | __attribute__ ((aligned(MM_LVL1_ENTRIES_NBR *sizeof(ptd)))) | 
| pte mmu_level2_tab[POK_CONFIG_NB_PARTITIONS][MM_LVL2_ENTRIES_NBR] | __attribute__ ((aligned(MM_LVL2_ENTRIES_NBR *sizeof(pte)))) | 
| pok_ret_t | pok_create_space (uint8_t partition_id, uint32_t addr, uint32_t size) | 
| pok_ret_t | pok_space_switch (uint8_t old_partition_id, uint8_t new_partition_id) | 
| uint32_t | pok_space_base_vaddr (uint32_t addr) | 
| uint32_t | pok_space_context_create (uint8_t id, uint32_t entry_rel, uint32_t stack_rel, uint32_t arg1, uint32_t arg2) | 
| void | pok_arch_space_init (void) | 
Variables | |
| struct pok_space | spaces [POK_CONFIG_NB_PARTITIONS] | 
Memory management in SPARC.
Definition in file space.c.
| ptd mmu_contexts_tab [POK_CONFIG_NB_PARTITIONS] __attribute__ | ( | (aligned(POK_CONFIG_NB_PARTITIONS *sizeof(ptd))) | ) | 
MMU contexts table. (cf SPARC V8 Manual, page 243)
| ptd mmu_level1_tab [POK_CONFIG_NB_PARTITIONS][MM_LVL1_ENTRIES_NBR] __attribute__ | ( | (aligned(MM_LVL1_ENTRIES_NBR *sizeof(ptd))) | ) | 
MMU level 1 table. (cf SPARC V8 Manual, page 243)
| pte mmu_level2_tab [POK_CONFIG_NB_PARTITIONS][MM_LVL2_ENTRIES_NBR] __attribute__ | ( | (aligned(MM_LVL2_ENTRIES_NBR *sizeof(pte))) | ) | 
MMU level 2 table. (cf SPARC V8 Manual, page 243)
| void pok_arch_space_init | ( | void | ) | 
Initilize MMU tables.
Definition at line 159 of file space.c.
Set ptd and pte for the given partition.
Definition at line 70 of file space.c.
| uint32_t pok_space_context_create | ( | uint8_t | id, | 
| uint32_t | entry_rel, | ||
| uint32_t | stack_rel, | ||
| uint32_t | arg1, | ||
| uint32_t | arg2 | ||
| ) | 
Initilize thread stack.
Definition at line 134 of file space.c.
Switch adress space in MMU (context register).
Definition at line 108 of file space.c.
| struct pok_space spaces[POK_CONFIG_NB_PARTITIONS] |