XenevaOS
Loading...
Searching...
No Matches
lowlevel.h
Go to the documentation of this file.
1
30#ifndef __LOW_LEVEL_H__
31#define __LOW_LEVEL_H__
32
33#include <stdint.h>
34
35#ifdef __cplusplus
36extern "C" {
37#endif
38
39 /*
40 * _getCurrentEL -- returns the current exception level
41 */
43
44 /*
45 * read_ttbr0_el1 -- reads the current exception's
46 * page mapping base address
47 */
49
50 /*
51 * write_ttbr0_el1 -- writes current page mapping base
52 * address
53 */
55
57
59
61
63
65
67
69
71
73
74 /*
75 * read_sctlr_el1 -- reads current system control
76 * register of el1
77 */
79
80 /*
81 * write_sctlr_el1 -- write current system control
82 * register of el1
83 * @param sctlr -- system control register value
84 */
86
88
90
91 /*
92 * dsb_ish -- data syncronization barrier inner shareablity memory
93 * flush, which makes the previous memory access visible for
94 * multi core system
95 */
96 void dsb_ish();
97
98 /*
99 * isb_flush -- instruction synchronization flush, flush previous
100 * instruction set
101 */
102 void isb_flush();
103
104 void tlb_flush(uint64_t virtul_addr);
105
107
109
111
113
115
117
118 void callKernel(void* param, uint64_t stack, uint64_t stacksize, void* entry);
119
120#ifdef __cplusplus
121}
122#endif
123
124#endif
void callKernel(void *param, uint64_t stack, uint64_t stacksize, void *entry)
void write_tcr_el1(uint64_t tcr)
uint64_t read_ttbr1_el1()
void dsb_ish()
void dc_cvau(uint64_t a)
void write_mair_el1(uint64_t mair)
uint64_t read_elr_el1()
uint64_t read_sctlr_el1()
uint64_t read_spsr_el2()
void write_spsr_el2(uint64_t spsr)
uint64_t _getCurrentEL()
void write_vbar_el1(uint64_t vecbase)
void isb_flush()
void write_ttbr0_el1(uint64_t *base)
void ic_ivau(uint64_t a)
uint64_t read_mair_el1()
void tlb_flush(uint64_t virtul_addr)
uint64_t read_ttbr0_el2()
uint64_t read_ttbr0_el1()
uint64_t read_far_el1()
uint64_t read_tcr_el1()
uint64_t read_tcr_el2()
void write_sctlr_el1(uint64_t sctlr)
uint64_t read_ttbr1_el2()
void write_ttbr1_el1(uint64_t *base)
uint64_t read_esr_el1()
COMPILER_DEPENDENT_UINT64 uint64_t
Definition acefiex.h:165
void(* entry)(void *)
Definition process.h:91