diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2021-05-15 10:24:48 -0700 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2021-05-15 10:24:48 -0700 |
| commit | c12a29ed9094b4b9cde8965c12850460b9a79d7c (patch) | |
| tree | 47bafd326f263da78bbf3c0f04a8ceaf43949986 /arch/x86/kernel/cpu/amd.c | |
| parent | e7c425b7441a96b95a75304aed369077f71e3e83 (diff) | |
| parent | 3743d55b289c203d8f77b7cd47c24926b9d186ae (diff) | |
| download | linux-c12a29ed9094b4b9cde8965c12850460b9a79d7c.tar.gz linux-c12a29ed9094b4b9cde8965c12850460b9a79d7c.tar.bz2 linux-c12a29ed9094b4b9cde8965c12850460b9a79d7c.zip | |
Merge tag 'sched-urgent-2021-05-15' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull scheduler fixes from Ingo Molnar:
"Fix an idle CPU selection bug, and an AMD Ryzen maximum frequency
enumeration bug"
* tag 'sched-urgent-2021-05-15' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
x86, sched: Fix the AMD CPPC maximum performance value on certain AMD Ryzen generations
sched/fair: Fix clearing of has_idle_cores flag in select_idle_cpu()
Diffstat (limited to 'arch/x86/kernel/cpu/amd.c')
| -rw-r--r-- | arch/x86/kernel/cpu/amd.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/arch/x86/kernel/cpu/amd.c b/arch/x86/kernel/cpu/amd.c index 2d11384dc9ab..6d7b3b3ea80b 100644 --- a/arch/x86/kernel/cpu/amd.c +++ b/arch/x86/kernel/cpu/amd.c @@ -1165,3 +1165,19 @@ void set_dr_addr_mask(unsigned long mask, int dr) break; } } + +u32 amd_get_highest_perf(void) +{ + struct cpuinfo_x86 *c = &boot_cpu_data; + + if (c->x86 == 0x17 && ((c->x86_model >= 0x30 && c->x86_model < 0x40) || + (c->x86_model >= 0x70 && c->x86_model < 0x80))) + return 166; + + if (c->x86 == 0x19 && ((c->x86_model >= 0x20 && c->x86_model < 0x30) || + (c->x86_model >= 0x40 && c->x86_model < 0x70))) + return 166; + + return 255; +} +EXPORT_SYMBOL_GPL(amd_get_highest_perf); |
