From ebf142a12ce4911b766bd618483434519efba0d5 Mon Sep 17 00:00:00 2001 From: Aaron Durbin Date: Fri, 29 Mar 2013 16:23:23 -0500 Subject: boot: add disable_cache_rom() function On certain architectures such as x86 the bootstrap processor does most of the work. When CACHE_ROM is employed it's appropriate to ensure that the caching enablement of the ROM is disabled so that the caching settings are symmetric before booting the payload or OS. Tested this on an x86 machine that turned on ROM caching. Linux did not complain about asymmetric MTRR settings nor did the ROM show up as cached in the MTRR settings. Change-Id: Ia32ff9fdb1608667a0e9a5f23b9c8af27d589047 Signed-off-by: Aaron Durbin Reviewed-on: http://review.coreboot.org/2980 Tested-by: build bot (Jenkins) Reviewed-by: Stefan Reinauer --- src/lib/selfboot.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/lib') diff --git a/src/lib/selfboot.c b/src/lib/selfboot.c index f933142144..be03b853a6 100644 --- a/src/lib/selfboot.c +++ b/src/lib/selfboot.c @@ -20,6 +20,7 @@ #include #include +#include #include #include #include @@ -540,6 +541,10 @@ int selfboot(struct lb_memory *mem, struct cbfs_payload *payload) coverage_exit(); #endif + /* Tear down the caching of the ROM. */ + if (disable_cache_rom) + disable_cache_rom(); + /* Before we go off to run the payload, see if * we stayed within our bounds. */ -- cgit v1.2.3