Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:arch\x86\kernel\cpu\common.c Create Date:2022-07-28 07:55:13
Last Modify:2020-03-16 20:28:31 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:get_cpu_cap

Proto:void get_cpu_cap(struct cpuinfo_x86 *c)

Type:void

Parameter:

TypeParameterName
struct cpuinfo_x86 *c
905  If Maximum supported CPUID level, -1=no CPUID: >= 0x00000001 Then
906  cpuid(0x00000001, & eax, & ebx, & ecx, & edx)
908  x86_capability[CPUID_1_ECX] = ecx
909  x86_capability[CPUID_1_EDX] = edx
913  If Maximum supported CPUID level, -1=no CPUID: >= 0x00000006 Then x86_capability[CPUID_6_EAX] = CPUID functions returning a single datum
917  If Maximum supported CPUID level, -1=no CPUID: >= 0x00000007 Then
918  cpuid_count(0x00000007, 0, & eax, & ebx, & ecx, & edx)
919  x86_capability[CPUID_7_0_EBX] = ebx
920  x86_capability[CPUID_7_ECX] = ecx
921  x86_capability[CPUID_7_EDX] = edx
924  If eax >= 1 Then
925  cpuid_count(0x00000007, 1, & eax, & ebx, & ecx, & edx)
931  If Maximum supported CPUID level, -1=no CPUID: >= 0x0000000d Then
932  cpuid_count(0x0000000d, 1, & eax, & ebx, & ecx, & edx)
934  x86_capability[CPUID_D_1_EAX] = eax
938  eax = CPUID functions returning a single datum
939  Max extended CPUID function supported: = eax
941  If (eax & 0xffff0000) == 0x80000000 Then
942  If eax >= 0x80000001 Then
943  cpuid(0x80000001, & eax, & ebx, & ecx, & edx)
950  If Max extended CPUID function supported: >= 0x80000007 Then
951  cpuid(0x80000007, & eax, & ebx, & ecx, & edx)
953  x86_capability[CPUID_8000_0007_EBX] = ebx
954  x86_power = edx
957  If Max extended CPUID function supported: >= 0x80000008 Then
958  cpuid(0x80000008, & eax, & ebx, & ecx, & edx)
959  x86_capability[CPUID_8000_0008_EBX] = ebx
962  If Max extended CPUID function supported: >= 0x8000000a Then x86_capability[CPUID_8000_000A_EDX] = cpuid_edx(0x8000000a)
965  init_scattered_cpuid_features(c)
966  init_speculation_control(c)
967  init_cqm(c)
974  apply_forced_caps(c)
Caller
NameDescribe
early_identify_cpuDo minimum CPU detection early.* Fields really needed: vendor, cpuid_level, family, model, mask,* cache alignment.* The others are not touched to avoid unwanted side effects.* WARNING: this function is only called on the boot CPU. Don't add code
generic_identify
microcode_checkThe microcode loader calls this upon late microcode load to recheck features,* only when microcode has been updated. Caller holds microcode_mutex and CPU* hotplug lock.
early_init_intel