summaryrefslogtreecommitdiff
path: root/src/cpu/amd/socket_AM2
diff options
context:
space:
mode:
authorAaron Durbin <adurbin@chromium.org>2013-03-20 15:50:59 -0500
committerStefan Reinauer <stefan.reinauer@coreboot.org>2013-03-22 04:06:42 +0100
commit57686f848597f6b133c9d45a9b98a54638399b32 (patch)
tree22c21ddc2f81cb3616a255061876042c8caf6a74 /src/cpu/amd/socket_AM2
parentc8eab2c0441851a141ef47d10022fb385d0eacad (diff)
downloadcoreboot-57686f848597f6b133c9d45a9b98a54638399b32.tar.xz
x86: unify amd and non-amd MTRR routines
The amd_mtrr.c file contains a copy of the fixed MTRR algorithm. However, the AMD code needs to handle the RdMem and WrMem attribute bits in the fixed MTRR MSRs. Instead of duplicating the code with the one slight change introduce a Kconfig option, X86_AMD_FIXED_MTRRS, which indicates that the RdMem and WrMem fields need to be handled for writeback fixed MTRR ranges. The order of how the AMD MTRR setup routine is maintained by providing a x86_setup_fixed_mtrrs_no_enable() function which does not enable the fixed MTRRs after setting them up. All Kconfig files which had a Makefile that included amd/mtrr in the subdirs-y now have a default X86_AMD_FIXED_MTRRS selection. There may be some overlap with the agesa and socket code, but I didn't know the best way to tease out the interdependency. Change-Id: I256d0210d1eb3004e2043b46374dcc0337432767 Signed-off-by: Aaron Durbin <adurbin@chromium.org> Reviewed-on: http://review.coreboot.org/2866 Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org> Tested-by: build bot (Jenkins)
Diffstat (limited to 'src/cpu/amd/socket_AM2')
-rw-r--r--src/cpu/amd/socket_AM2/Kconfig1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/cpu/amd/socket_AM2/Kconfig b/src/cpu/amd/socket_AM2/Kconfig
index 6849154935..c8c79bbf37 100644
--- a/src/cpu/amd/socket_AM2/Kconfig
+++ b/src/cpu/amd/socket_AM2/Kconfig
@@ -5,6 +5,7 @@ config CPU_AMD_SOCKET_AM2
select K8_HT_FREQ_1G_SUPPORT
select CPU_AMD_MODEL_FXX
select CACHE_AS_RAM
+ select X86_AMD_FIXED_MTRRS
config CPU_SOCKET_TYPE
hex