summaryrefslogtreecommitdiff
path: root/src/cpu/amd
diff options
context:
space:
mode:
authorJonathan A. Kollasch <jakllsch@kollasch.net>2015-07-13 17:05:07 -0500
committerJonathan A. Kollasch <jakllsch@kollasch.net>2015-07-15 19:03:43 +0200
commite731f721bedee7ce9c6ac21249fac05ff5cf63d3 (patch)
tree266e02f71044fc045078b091f4bed064520e902b /src/cpu/amd
parent2272b80a1dafdee57d8ca89860e9e988f1dceafc (diff)
amd/model_fxx rev.F: emit P-states when no intermediates exist
Relevant for systems having processors that only have two (the minimum and maximum) P-states, such as the Opteron 2210 at 1.0 and 1.8GHz. Change-Id: Ic66fe6d10ce495c1bf21796cb7e1eb4e11e85283 Signed-off-by: Jonathan A. Kollasch <jakllsch@kollasch.net> Reviewed-on: http://review.coreboot.org/10910 Tested-by: build bot (Jenkins) Tested-by: Raptor Engineering Automated Test Stand <noreply@raptorengineeringinc.com> Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Diffstat (limited to 'src/cpu/amd')
-rw-r--r--src/cpu/amd/model_fxx/powernow_acpi.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/cpu/amd/model_fxx/powernow_acpi.c b/src/cpu/amd/model_fxx/powernow_acpi.c
index f2aa59639a..ac505ee263 100644
--- a/src/cpu/amd/model_fxx/powernow_acpi.c
+++ b/src/cpu/amd/model_fxx/powernow_acpi.c
@@ -194,11 +194,6 @@ static void pstates_algorithm(u32 pcontrol_blk, u8 plen, u8 onlyBSP)
else
PstateStep_coef = 2;
- if (IntPstateSup == 0) {
- printk(BIOS_INFO, "No intermediate P-states are supported\n");
- goto write_pstates;
- }
-
/* Get the multiplier of the fid frequency */
/*
* Fid multiplier is always 100 revF and revG.
@@ -233,6 +228,11 @@ static void pstates_algorithm(u32 pcontrol_blk, u8 plen, u8 onlyBSP)
Pstate_num++;
}
+ if (IntPstateSup == 0) {
+ printk(BIOS_SPEW, "No intermediate P-states are supported\n");
+ goto nointpstatesup;
+ }
+
Cur_feq = Max_feq;
Cur_fid = Max_fid;
/* Construct P1 state */
@@ -313,6 +313,7 @@ static void pstates_algorithm(u32 pcontrol_blk, u8 plen, u8 onlyBSP)
Pstate_num++;
}
+nointpstatesup:
/* Construct P[Min] State */
if (Max_fid == 0x2A && Max_vid != 0x0) {
Pstate_fid[Pstate_num] = 0x2;