MOS Source Code
Loading...
Searching...
No Matches
platform_defs.h File Reference
#include "mos/x86/cpu/cpuid.h"
#include <mos/types.h>
+ Include dependency graph for platform_defs.h:

Go to the source code of this file.

Classes

struct  platform_process_options_t
 
struct  platform_thread_options_t
 
struct  platform_cpuinfo_t
 
struct  platform_arch_info_t
 

Macros

#define MOS_PLATFORM_PAGING_LEVELS   4
 
#define MOS_USER_END_VADDR   0x00007FFFFFFFFFFF
 
#define MOS_KERNEL_START_VADDR   0xFFFF800000000000
 
#define MOS_PLATFORM_HAS_FDT   0
 
#define PML1_SHIFT   12
 
#define PML1_MASK   0x1FFL
 
#define PML1_ENTRIES   512
 
#define PML2_SHIFT   21
 
#define PML2_MASK   0x1FFL
 
#define PML2_ENTRIES   512
 
#define PML2_HUGE_CAPABLE   1
 
#define PML3_SHIFT   30
 
#define PML3_MASK   0x1FFL
 
#define PML3_ENTRIES   512
 
#define PML3_HUGE_CAPABLE   1
 
#define PML4_SHIFT   39
 
#define PML4_MASK   0x1FFL
 
#define PML4_ENTRIES   512
 
#define PML4_HUGE_CAPABLE   -1
 
#define MOS_ELF_PLATFORM   EM_X86_64
 
#define MOS_PLATFORM_PANIC_INSTR   "ud2"
 
#define MOS_PLATFORM_PANIC_POINT_ASM
 
#define MOS_PLATFORM_DEBUG_MODULES(X)
 
#define MOS_PLATFORM_MEMORY_BARRIER()
 

Macro Definition Documentation

◆ MOS_PLATFORM_PAGING_LEVELS

#define MOS_PLATFORM_PAGING_LEVELS   4

Definition at line 9 of file platform_defs.h.

◆ MOS_USER_END_VADDR

#define MOS_USER_END_VADDR   0x00007FFFFFFFFFFF

Definition at line 10 of file platform_defs.h.

◆ MOS_KERNEL_START_VADDR

#define MOS_KERNEL_START_VADDR   0xFFFF800000000000

Definition at line 11 of file platform_defs.h.

◆ MOS_PLATFORM_HAS_FDT

#define MOS_PLATFORM_HAS_FDT   0

Definition at line 13 of file platform_defs.h.

◆ PML1_SHIFT

#define PML1_SHIFT   12

Definition at line 15 of file platform_defs.h.

◆ PML1_MASK

#define PML1_MASK   0x1FFL

Definition at line 16 of file platform_defs.h.

◆ PML1_ENTRIES

#define PML1_ENTRIES   512

Definition at line 17 of file platform_defs.h.

◆ PML2_SHIFT

#define PML2_SHIFT   21

Definition at line 19 of file platform_defs.h.

◆ PML2_MASK

#define PML2_MASK   0x1FFL

Definition at line 20 of file platform_defs.h.

◆ PML2_ENTRIES

#define PML2_ENTRIES   512

Definition at line 21 of file platform_defs.h.

◆ PML2_HUGE_CAPABLE

#define PML2_HUGE_CAPABLE   1

Definition at line 22 of file platform_defs.h.

◆ PML3_SHIFT

#define PML3_SHIFT   30

Definition at line 24 of file platform_defs.h.

◆ PML3_MASK

#define PML3_MASK   0x1FFL

Definition at line 25 of file platform_defs.h.

◆ PML3_ENTRIES

#define PML3_ENTRIES   512

Definition at line 26 of file platform_defs.h.

◆ PML3_HUGE_CAPABLE

#define PML3_HUGE_CAPABLE   1

Definition at line 27 of file platform_defs.h.

◆ PML4_SHIFT

#define PML4_SHIFT   39

Definition at line 29 of file platform_defs.h.

◆ PML4_MASK

#define PML4_MASK   0x1FFL

Definition at line 30 of file platform_defs.h.

◆ PML4_ENTRIES

#define PML4_ENTRIES   512

Definition at line 31 of file platform_defs.h.

◆ PML4_HUGE_CAPABLE

#define PML4_HUGE_CAPABLE   -1

Definition at line 32 of file platform_defs.h.

◆ MOS_ELF_PLATFORM

#define MOS_ELF_PLATFORM   EM_X86_64

Definition at line 34 of file platform_defs.h.

◆ MOS_PLATFORM_PANIC_INSTR

#define MOS_PLATFORM_PANIC_INSTR   "ud2"

Definition at line 36 of file platform_defs.h.

◆ MOS_PLATFORM_PANIC_POINT_ASM

#define MOS_PLATFORM_PANIC_POINT_ASM
Value:
".quad 1b\n\t" \
".quad %c0\n\t" \
".quad %c1\n\t" \
".quad %c2\n\t"

Definition at line 39 of file platform_defs.h.

◆ MOS_PLATFORM_DEBUG_MODULES

#define MOS_PLATFORM_DEBUG_MODULES ( X)
Value:
X(x86_cpu) \
X(x86_lapic) \
X(x86_ioapic) \
X(x86_startup) \
X(x86_acpi)

Definition at line 47 of file platform_defs.h.

◆ MOS_PLATFORM_MEMORY_BARRIER

#define MOS_PLATFORM_MEMORY_BARRIER ( )
Value:
__asm__ __volatile__("" ::: "memory")

Definition at line 55 of file platform_defs.h.