Commit d4274252 authored by Boris Ostrovsky's avatar Boris Ostrovsky Committed by Greg Kroah-Hartman
Browse files

x86, AMD: Set ARAT feature on AMD processors

commit b87cf80a upstream.

Support for Always Running APIC timer (ARAT) was introduced in
commit db954b58

. This feature
allows us to avoid switching timers from LAPIC to something else
(e.g. HPET) and go into timer broadcasts when entering deep
C-states.

AMD processors don't provide a CPUID bit for that feature but
they also keep APIC timers running in deep C-states (except for
cases when the processor is affected by erratum 400). Therefore
we should set ARAT feature bit on AMD CPUs.
Tested-by: default avatarBorislav Petkov <borislav.petkov@amd.com>
Acked-by: default avatarAndreas Herrmann <andreas.herrmann3@amd.com>
Acked-by: default avatarMark Langsdorf <mark.langsdorf@amd.com>
Acked-by: default avatarThomas Gleixner <tglx@linutronix.de>
Signed-off-by: default avatarBoris Ostrovsky <boris.ostrovsky@amd.com>
LKML-Reference: <1300205624-4813-1-git-send-email-ostr@amd64.org>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 7a3b25c0
No related merge requests found
Showing with 4 additions and 0 deletions
+4 -0
......@@ -566,6 +566,10 @@ static void __cpuinit init_amd(struct cpuinfo_x86 *c)
}
}
#endif
/* As a rule processors have APIC timer running in deep C states */
if (c->x86 >= 0xf && !cpu_has_amd_erratum(amd_erratum_400))
set_cpu_cap(c, X86_FEATURE_ARAT);
}
#ifdef CONFIG_X86_32
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment