summaryrefslogtreecommitdiff
path: root/src/northbridge/amd/amdfam10
diff options
context:
space:
mode:
authorTimothy Pearson <tpearson@raptorengineeringinc.com>2015-08-09 02:47:51 -0500
committerMartin Roth <martinroth@google.com>2015-11-24 19:27:43 +0100
commit68130f506df5c77107ece8d71aa45b598be77b45 (patch)
treefef16b57eadc6b180f97e4c5cc392d195d3cc239 /src/northbridge/amd/amdfam10
parentb174667534c327b8558ff04986a2c1a971b7f04e (diff)
downloadcoreboot-68130f506df5c77107ece8d71aa45b598be77b45.tar.xz
amd/amdfam10: Control Fam15h cache partitioning via nvram
Add options to control cache partitioning and overall memory performance via nvram. Change-Id: I3dd5d7f3640aee0395a68645c0242307605d3ce7 Signed-off-by: Timothy Pearson <tpearson@raptorengineeringinc.com> Reviewed-on: http://review.coreboot.org/12041 Tested-by: build bot (Jenkins) Reviewed-by: Martin Roth <martinroth@google.com>
Diffstat (limited to 'src/northbridge/amd/amdfam10')
-rw-r--r--src/northbridge/amd/amdfam10/northbridge.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/northbridge/amd/amdfam10/northbridge.c b/src/northbridge/amd/amdfam10/northbridge.c
index ced64aa65e..600fdf8596 100644
--- a/src/northbridge/amd/amdfam10/northbridge.c
+++ b/src/northbridge/amd/amdfam10/northbridge.c
@@ -1650,6 +1650,17 @@ static void detect_and_enable_probe_filter(device_t dev)
{
uint32_t dword;
+ uint8_t nvram;
+ uint8_t enable_probe_filter;
+
+ /* Check to see if the probe filter is allowed */
+ enable_probe_filter = 1;
+ if (get_option(&nvram, "probe_filter") == CB_SUCCESS)
+ enable_probe_filter = !!nvram;
+
+ if (!enable_probe_filter)
+ return;
+
uint8_t fam15h = 0;
uint8_t rev_gte_d = 0;
uint8_t dual_node = 0;
@@ -1810,6 +1821,17 @@ static void detect_and_enable_cache_partitioning(device_t dev)
uint8_t i;
uint32_t dword;
+ uint8_t nvram;
+ uint8_t enable_l3_cache_partitioning;
+
+ /* Check to see if cache partitioning is allowed */
+ enable_l3_cache_partitioning = 0;
+ if (get_option(&nvram, "l3_cache_partitioning") == CB_SUCCESS)
+ enable_l3_cache_partitioning = !!nvram;
+
+ if (!enable_l3_cache_partitioning)
+ return;
+
if (is_fam15h()) {
printk(BIOS_DEBUG, "Enabling L3 cache partitioning\n");