MOS Source Code
|
#include "mos/assert.h"
#include "mos/platform/platform.h"
#include "mos/riscv64/cpu/cpu.h"
#include "mos/tasks/signal.h"
#include "mos/tasks/task_types.h"
#include <mos/platform_syscall.h>
#include <mos_stdlib.h>
Go to the source code of this file.
Macros | |
#define | FLEN 64 |
#define | f_op(reg, val) |
#define | f_op(reg, val) |
Typedefs | |
typedef void(* | switch_func_t) () |
#define FLEN 64 |
Definition at line 143 of file riscv64_platform_api.c.
#define f_op | ( | reg, | |
val ) |
Referenced by do_restore_fp_context(), and do_save_fp_context().
#define f_op | ( | reg, | |
val ) |
typedef void(* switch_func_t) () |
Definition at line 13 of file riscv64_platform_api.c.
|
extern |
Referenced by platform_switch_to_thread().
|
static |
Definition at line 16 of file riscv64_platform_api.c.
Referenced by platform_switch_to_thread().
|
static |
Definition at line 23 of file riscv64_platform_api.c.
Referenced by platform_switch_to_thread().
|
extern |
Referenced by platform_switch_to_thread().
Definition at line 34 of file riscv64_platform_api.c.
Referenced by power_shutdown().
Definition at line 41 of file riscv64_platform_api.c.
Referenced by do_syslog(), enter_scheduler(), and platform_ap_entry().
Definition at line 46 of file riscv64_platform_api.c.
Referenced by idle_task(), and platform_shutdown().
void platform_dump_regs | ( | platform_regs_t * | regs | ) |
Definition at line 51 of file riscv64_platform_api.c.
Referenced by invalid_page_fault(), try_handle_kernel_panics_at(), x86_handle_exception(), and x86_handle_nmi().
platform_regs_t * platform_thread_regs | ( | const thread_t * | thread | ) |
Definition at line 64 of file riscv64_platform_api.c.
Referenced by platform_arch_syscall(), platform_context_clone(), platform_context_setup_child_thread(), platform_context_setup_main_thread(), process_do_execveat(), riscv64_start_kernel_thread(), riscv64_start_user_thread(), x86_setup_thread_common(), x86_start_kernel_thread(), and x86_start_user_thread().
Definition at line 69 of file riscv64_platform_api.c.
Referenced by platform_context_setup_child_thread(), and platform_context_setup_main_thread().
void platform_context_setup_main_thread | ( | thread_t * | thread, |
ptr_t | entry, | ||
ptr_t | sp, | ||
int | argc, | ||
ptr_t | argv, | ||
ptr_t | envp ) |
Definition at line 75 of file riscv64_platform_api.c.
Referenced by elf_do_fill_process().
void platform_context_setup_child_thread | ( | thread_t * | thread, |
thread_entry_t | entry, | ||
void * | arg ) |
Definition at line 86 of file riscv64_platform_api.c.
Referenced by create_thread(), and kthread_create_no_sched().
Definition at line 106 of file riscv64_platform_api.c.
Referenced by process_do_fork().
Definition at line 119 of file riscv64_platform_api.c.
Referenced by process_do_execveat(), and thread_destroy().
Definition at line 125 of file riscv64_platform_api.c.
Referenced by try_handle_kernel_panics_at().
Definition at line 131 of file riscv64_platform_api.c.
Referenced by idle_task().
void platform_switch_mm | ( | const mm_context_t * | new_mm | ) |
Definition at line 137 of file riscv64_platform_api.c.
Referenced by mm_switch_context(), mos_start_kernel(), and platform_ap_entry().
Definition at line 145 of file riscv64_platform_api.c.
Referenced by platform_switch_to_thread().
Definition at line 187 of file riscv64_platform_api.c.
Referenced by platform_switch_to_thread().
void platform_switch_to_thread | ( | thread_t * | current, |
thread_t * | new_thread, | ||
switch_flags_t | switch_flags ) |
Definition at line 228 of file riscv64_platform_api.c.
Referenced by reschedule().
void platform_return_to_userspace | ( | platform_regs_t * | regs | ) |
Definition at line 252 of file riscv64_platform_api.c.
Referenced by platform_jump_to_signal_handler(), platform_restore_from_signal_handler(), process_do_execveat(), riscv64_start_user_thread(), riscv64_trap_handler(), and x86_start_user_thread().
Definition at line 265 of file riscv64_platform_api.c.
Referenced by arch_syscall().
void platform_ipi_send | ( | u8 | target_cpu, |
ipi_type_t | type ) |
Definition at line 283 of file riscv64_platform_api.c.
void platform_dump_stack | ( | platform_regs_t * | regs | ) |
Definition at line 290 of file riscv64_platform_api.c.
Referenced by invalid_page_fault(), try_handle_kernel_panics_at(), and x86_handle_exception().
void platform_syscall_setup_restart_context | ( | platform_regs_t * | regs, |
reg_t | syscall_nr ) |
Definition at line 303 of file riscv64_platform_api.c.
Referenced by signal_exit_to_user_prepare_syscall().
void platform_syscall_store_retval | ( | platform_regs_t * | regs, |
reg_t | result ) |
Definition at line 309 of file riscv64_platform_api.c.
Referenced by signal_exit_to_user_prepare_syscall().
void platform_jump_to_signal_handler | ( | const platform_regs_t * | regs, |
const sigreturn_data_t * | sigreturn_data, | ||
const sigaction_t * | sa ) |
Definition at line 314 of file riscv64_platform_api.c.
Referenced by do_signal_exit_to_user_prepare().
Definition at line 331 of file riscv64_platform_api.c.
Referenced by MOS_STATIC_ASSERT().