Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:arch\x86\kernel\cpu\centaur.c Create Date:2022-07-28 07:59:03
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:init_c3

Proto:static void init_c3(struct cpuinfo_x86 *c)

Type:void

Parameter:

TypeParameterName
struct cpuinfo_x86 *c
33  If CPUID functions returning a single datum >= 0xC0000001 Then
34  tmp = cpuid_edx(0xC0000001)
37  If (tmp & (ACE_PRESENT | ACE_ENABLED)) == ACE_PRESENT Then
39  lo |= MSR_VIA_FCR
41  pr_info("CPU: Enabled ACE h/w crypto\n")
45  If (tmp & (RNG_PRESENT | RNG_ENABLED)) == RNG_PRESENT Then
47  lo |= MSR_VIA_RNG
49  pr_info("CPU: Enabled h/w RNG\n")
55  x86_capability[CPUID_C000_0001_EDX] = cpuid_edx(0xC0000001)
59  If x86_model >= 6 && x86_model <= 13 Then
60  Access to machine-specific registers (available on 586 and better only)* Note: the rd* operations modify the parameters directly (without using* pointer indirection), this allows gcc to optimize better(VIA Cyrix defined MSRs, lo, hi)
61  lo |= 1 << 1 | 1 << 7
62  wrmsr(VIA Cyrix defined MSRs, lo, hi)
63  set_cpu_cap(c, CMPXCHG8 instruction )
67  If x86_model >= 6 && x86_model < 9 Then set_cpu_cap(c, 3DNow )
70  If CPU family == 0x6 && x86_model >= 0xf Then
71  In bytes = x86_clflush_size * 2
72  set_cpu_cap(c, REP microcode works well )
75  cpu_detect_cache_sizes(c)
Caller
NameDescribe
init_centaur