summaryrefslogtreecommitdiffstats
path: root/src/include
diff options
context:
space:
mode:
authorNico Huber <nico.h@gmx.de>2018-11-13 19:28:07 +0100
committerPatrick Georgi <pgeorgi@google.com>2018-11-23 08:34:16 +0000
commitd67edcae6e9d438f2e60f6b67d97a7d3f09cb18b (patch)
tree38d7fe7b769f4193ea3b4494dc7944b9718c678c /src/include
parent3032d7677883eb726d14fcd85efae7a7c068259a (diff)
downloadcoreboot-d67edcae6e9d438f2e60f6b67d97a7d3f09cb18b.tar.gz
coreboot-d67edcae6e9d438f2e60f6b67d97a7d3f09cb18b.tar.bz2
coreboot-d67edcae6e9d438f2e60f6b67d97a7d3f09cb18b.zip
soc/intel/common: Bring DISPLAY_MTRRS into the light
Initially, I wanted to move only the Kconfig DISPLAY_MTRRS into the "Debug" menu. It turned out, though, that the code looks rather generic. No need to hide it in soc/intel/. To not bloat src/Kconfig up any further, start a new `Kconfig.debug` hierarchy just for debug options. If somebody wants to review the code if it's 100% generic, we could even get rid of HAVE_DISPLAY_MTRRS. Change-Id: Ibd0a64121bd6e4ab5d7fd835f3ac25d3f5011f24 Signed-off-by: Nico Huber <nico.h@gmx.de> Reviewed-on: https://review.coreboot.org/c/29684 Reviewed-by: Patrick Georgi <pgeorgi@google.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/include')
-rw-r--r--src/include/cpu/x86/mtrr.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/include/cpu/x86/mtrr.h b/src/include/cpu/x86/mtrr.h
index 1f704ac86903..eb7d78d1c57d 100644
--- a/src/include/cpu/x86/mtrr.h
+++ b/src/include/cpu/x86/mtrr.h
@@ -99,10 +99,17 @@ void x86_mtrr_check(void);
* This function needs to be called after the first MTRR solution is derived. */
void mtrr_use_temp_range(uintptr_t begin, size_t size, int type);
+static inline int get_var_mtrr_count(void)
+{
+ return rdmsr(MTRR_CAP_MSR).lo & MTRR_CAP_VCNT;
+}
+
void set_var_mtrr(unsigned int reg, unsigned int base, unsigned int size,
unsigned int type);
int get_free_var_mtrr(void);
+asmlinkage void display_mtrrs(void);
+
/*
* Set the MTRRs using the data on the stack from setup_stack_and_mtrrs.
* Return a new top_of_stack value which removes the setup_stack_and_mtrrs data.