From 81f90c58d2eacf8ee2baf2334fd38bbfa0ef7274 Mon Sep 17 00:00:00 2001 From: Isaac Christensen Date: Wed, 24 Sep 2014 14:59:32 -0600 Subject: x86/mtrr: Enable MTRR's before enabling caching MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fix up the following commit by enabling the MTRR's before enabling caching. 7756fe7 x86: Minimize work done with the caches disabled in mtrr functions. Also fix two typos in comments. Change-Id: If751b815f9dab781fc38c898cf692f0940c57695 Signed-off-by: Isaac Christensen Reviewed-on: http://review.coreboot.org/6969 Reviewed-by: Aaron Durbin Reviewed-by: Kyösti Mälkki Tested-by: build bot (Jenkins) --- src/cpu/x86/mtrr/mtrr.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'src/cpu/x86') diff --git a/src/cpu/x86/mtrr/mtrr.c b/src/cpu/x86/mtrr/mtrr.c index e0392f7978..69cd2d2eb1 100644 --- a/src/cpu/x86/mtrr/mtrr.c +++ b/src/cpu/x86/mtrr/mtrr.c @@ -51,8 +51,8 @@ #define OS_MTRRS 2 #define MTRRS (BIOS_MTRRS + OS_MTRRS) /* - * Static storage size for variable MTRRs. Its sized sufficiently large to - * handle different types of CPUs. Empiricially, 16 variable MTRRs has not + * Static storage size for variable MTRRs. It's sized sufficiently large to + * handle different types of CPUs. Empirically, 16 variable MTRRs has not * yet been observed. */ #define NUM_MTRR_STATIC_STORAGE 16 @@ -769,7 +769,7 @@ static void commit_var_mtrrs(const struct var_mtrr_solution *sol) { int i; - /* Write out the variable MTTRs. */ + /* Write out the variable MTRRs. */ disable_cache(); for (i = 0; i < sol->num_used; i++) { wrmsr(MTRRphysBase_MSR(i), sol->regs[i].base); @@ -778,6 +778,7 @@ static void commit_var_mtrrs(const struct var_mtrr_solution *sol) /* Clear the ones that are unused. */ for (; i < total_mtrrs; i++) clear_var_mtrr(i); + enable_var_mtrr(sol->mtrr_default_type); enable_cache(); } @@ -800,7 +801,6 @@ void x86_setup_var_mtrrs(unsigned int address_bits, unsigned int above4gb) } commit_var_mtrrs(sol); - enable_var_mtrr(sol->mtrr_default_type); } void x86_setup_mtrrs(void) -- cgit v1.2.3