Function report |
Source Code:arch\x86\kernel\cpu\intel.c |
Create Date:2022-07-28 07:57:29 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:init_intel
Proto:static void init_intel(struct cpuinfo_x86 *c)
Type:void
Parameter:
Type | Parameter | Name |
---|---|---|
struct cpuinfo_x86 * | c |
657 | early_init_intel(c) |
659 | intel_workarounds(c) |
668 | If Not cpu_has(c, CPU topology enum extensions ) Then |
673 | detect_num_cpu_cores(c) |
679 | init_intel_cacheinfo(c) |
681 | If Maximum supported CPUID level, -1=no CPUID: > 9 Then |
684 | If eax & 0xff && ( eax >> 8 & 0xff) > 1 Then set_cpu_cap(c, Intel Architectural PerfMon ) |
688 | If cpu_has(c, "sse2" ) Then set_cpu_cap(c, "" LFENCE synchronizes RDTSC ) |
691 | If boot_cpu_has("dts" Debug Store ) Then |
695 | If Not (l1 & 1 << 11 ) Then set_cpu_cap(c, Branch Trace Store ) |
697 | If Not (l1 & 1 << 12 ) Then set_cpu_cap(c, Precise-Event Based Sampling ) |
701 | If CPU family == 6 && boot_cpu_has(CLFLUSH instruction ) && ( x86_model == 29 || x86_model == 46 || x86_model == 47 ) Then set_cpu_bug(c, AAI65, CLFLUSH required before MONITOR ) |
705 | If CPU family == 6 && boot_cpu_has("monitor" MONITOR/MWAIT support ) && x86_model == Apollo Lake Then set_cpu_bug(c, IPI required to wake up remote CPU ) |
710 | If CPU family == 15 Then In bytes = x86_clflush_size * 2 |
712 | If CPU family == 6 Then set_cpu_cap(c, REP microcode works well ) |
756 | srat_detect_node(c) |
758 | If cpu_has(c, Hardware virtualization ) Then detect_vmx_virtcap(c) |
761 | If cpu_has(c, Intel Total Memory Encryption ) Then detect_tme(c) |
766 | If tsx_ctrl_state == TSX_CTRL_ENABLE Then tsx_enable() |
768 | If tsx_ctrl_state == TSX_CTRL_DISABLE Then tsx_disable() |
Source code conversion tool public plug-in interface | X |
---|---|
Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |