MOS Source Code
Loading...
Searching...
No Matches
cpu.cpp File Reference
#include "mos/x86/cpu/cpu.hpp"
#include "mos/assert.hpp"
#include "mos/platform/platform.hpp"
#include "mos/platform/platform_defs.hpp"
#include "mos/syslog/printk.hpp"
#include "mos/x86/cpu/cpuid.hpp"
#include "mos/x86/tasks/fpu_context.hpp"
#include <mos_string.hpp>
+ Include dependency graph for cpu.cpp:

Go to the source code of this file.

Macros

#define do_static_assert(feat)
 
#define test_ensure_all_leaves_are_supported(feature)
 
#define impl_fill_leaf(_l, _sl, _r)
 

Functions

 MOS_STATIC_ASSERT (X86_CPUID_1_0_d >=0)
 
 MOS_STATIC_ASSERT (X86_CPUID_1_0_c >=0)
 
 MOS_STATIC_ASSERT (X86_CPUID_7_0_b >=0)
 
 MOS_STATIC_ASSERT (X86_CPUID_7_0_c >=0)
 
 MOS_STATIC_ASSERT (X86_CPUID_0xd_1_a >=0)
 
 MOS_STATIC_ASSERT (X86_CPUID_0x80000001_0_d >=0)
 
void x86_cpu_initialise_caps (void)
 
void x86_cpu_setup_xsave_area (void)
 

Macro Definition Documentation

◆ do_static_assert

#define do_static_assert ( feat)
Value:
#define X86_CPUID_LEAF_ENUM(leaf, subleaf, reg,...)
Definition cpuid.hpp:92
#define MOS_STATIC_ASSERT
Definition mos_global.h:14

Definition at line 15 of file cpu.cpp.

◆ test_ensure_all_leaves_are_supported

#define test_ensure_all_leaves_are_supported ( feature)
Value:
do_static_assert(CPU_FEATURE_##feature)
#define do_static_assert(feat)
Definition cpu.cpp:15

Definition at line 16 of file cpu.cpp.

Referenced by MOS_STATIC_ASSERT().

◆ impl_fill_leaf

#define impl_fill_leaf ( _l,
_sl,
_r )
Value:
cpuinfo->cpuid[X86_CPUID_LEAF_ENUM(_l, _sl, _r, _)] = x86_cpuid(_r, _l, _sl);
#define x86_cpuid(return_reg, leaf, subleaf)
Definition cpu.hpp:28

Referenced by x86_cpu_initialise_caps().

Function Documentation

◆ MOS_STATIC_ASSERT() [1/6]

MOS_STATIC_ASSERT ( X86_CPUID_1_0_d >= 0)

◆ MOS_STATIC_ASSERT() [2/6]

MOS_STATIC_ASSERT ( X86_CPUID_1_0_c >= 0)

◆ MOS_STATIC_ASSERT() [3/6]

MOS_STATIC_ASSERT ( X86_CPUID_7_0_b >= 0)

◆ MOS_STATIC_ASSERT() [4/6]

MOS_STATIC_ASSERT ( X86_CPUID_7_0_c >= 0)

◆ MOS_STATIC_ASSERT() [5/6]

MOS_STATIC_ASSERT ( X86_CPUID_0xd_1_a >= 0)

◆ MOS_STATIC_ASSERT() [6/6]

MOS_STATIC_ASSERT ( X86_CPUID_0x80000001_0_d >= 0)

◆ x86_cpu_initialise_caps()

void x86_cpu_initialise_caps ( void )

Definition at line 22 of file cpu.cpp.

Referenced by platform_ap_entry(), and platform_startup_early().

◆ x86_cpu_setup_xsave_area()

void x86_cpu_setup_xsave_area ( void )

Definition at line 39 of file cpu.cpp.

Referenced by platform_ap_entry(), and platform_startup_early().