x86, cpu: AMD errata checking framework
authorHans Rosenfeld <hans.rosenfeld@amd.com>
Wed, 28 Jul 2010 17:09:30 +0000 (19:09 +0200)
committerAndi Kleen <ak@linux.intel.com>
Thu, 28 Apr 2011 15:21:05 +0000 (08:21 -0700)
commit22e086770c43e105b0f64eef88752fea39a3c68c
treeb779deb5c7d6132fd63f49745594d31396263603
parentbd1ad0b2ef08f8c6e42bfd356d7666bca6e2bfcb
x86, cpu: AMD errata checking framework

commit d78d671db478eb8b14c78501c0cee1cc7baf6967 upstream.

Errata are defined using the AMD_LEGACY_ERRATUM() or AMD_OSVW_ERRATUM()
macros. The latter is intended for newer errata that have an OSVW id
assigned, which it takes as first argument. Both take a variable number
of family-specific model-stepping ranges created by AMD_MODEL_RANGE().

Iff an erratum has an OSVW id, OSVW is available on the CPU, and the
OSVW id is known to the hardware, it is used to determine whether an
erratum is present. Otherwise, the model-stepping ranges are matched
against the current CPU to find out whether the erratum applies.

For certain special errata, the code using this framework might have to
conduct further checks to make sure an erratum is really (not) present.

Signed-off-by: Hans Rosenfeld <hans.rosenfeld@amd.com>
Signed-off-by: Andi Kleen <ak@linux.intel.com>
LKML-Reference: <1280336972-865982-1-git-send-email-hans.rosenfeld@amd.com>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
arch/x86/include/asm/processor.h
arch/x86/kernel/cpu/amd.c