|
AquilaOS documentation
How it works, and its code
|
#include <core/system.h>Go to the source code of this file.
Data Structures | |
| struct | aarch64_regs |
| What an exception saves on the kernel stack (cpu/vectors.S): the context it interrupted. More... | |
| struct | arch_cpu |
| A CPU's aarch64 state (struct cpu's arch). More... | |
Macros | |
| #define | PSTATE_EL0t 0x0 |
| #define | PSTATE_EL1h 0x5 |
| #define | PSTATE_MODE 0xF |
| #define | PSTATE_DAIF (0xF << 6) |
| #define | REGS_USER(r) |
| #define | read_sysreg(r) |
| #define | write_sysreg(r, v) |
| #define | isb() |
| #define | dsb() |
Functions | |
| static struct cpu * | curcpu (void) |
| Returns the running CPU's struct cpu, which TPIDR_EL1, the register meant for it, holds. | |
| #define isb | ( | ) |
Definition at line 45 of file cpu.h.
Referenced by aarch64_init(), fpen(), pmap_switch(), and timer_setup().
| #define read_sysreg | ( | r | ) |
Definition at line 33 of file cpu.h.
Referenced by aarch64_init(), abort(), arch_cycles(), arch_rtime_ns(), curcpu(), dump(), and timer_setup().
| #define REGS_USER | ( | r | ) |
Definition at line 29 of file cpu.h.
Referenced by aarch64_irq(), aarch64_return_to_user(), abort(), sched_tick(), and sync_dispatch().
| #define write_sysreg | ( | r, | |
| v ) |
Definition at line 39 of file cpu.h.
Referenced by aarch64_init(), fpen(), pmap_switch(), timer_irq(), and timer_setup().
|
inlinestatic |
Returns the running CPU's struct cpu, which TPIDR_EL1, the register meant for it, holds.
Definition at line 62 of file cpu.h.
References read_sysreg.