summaryrefslogtreecommitdiffstats
path: root/src/import/chips/p9/procedures
diff options
context:
space:
mode:
authorBrian Vanderpool <vanderp@us.ibm.com>2017-07-13 12:31:38 -0500
committerSachin Gupta <sgupta2m@in.ibm.com>2017-07-17 01:42:29 -0400
commita59c4d0102a9d4e58646e644b529a99bbbcafe9e (patch)
treefb45377ebecb71abc7d0eaf4bf4aef04824f5fa2 /src/import/chips/p9/procedures
parentf5ccc6152183403a2fcd343513f0ac34932c458c (diff)
downloadtalos-sbe-a59c4d0102a9d4e58646e644b529a99bbbcafe9e.tar.gz
talos-sbe-a59c4d0102a9d4e58646e644b529a99bbbcafe9e.zip
PM: Clear CPMMR PPM_WRITE_DISABLE for suspend
Change-Id: If31804e83457fe17405439b2f94eff7c24ca3ee6 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/43102 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: Michael S. Floyd <mfloyd@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Gregory S. Still <stillgs@us.ibm.com> Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/43180 Reviewed-by: Sachin Gupta <sgupta2m@in.ibm.com>
Diffstat (limited to 'src/import/chips/p9/procedures')
-rw-r--r--src/import/chips/p9/procedures/hwp/pm/p9_suspend_powman.C11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/import/chips/p9/procedures/hwp/pm/p9_suspend_powman.C b/src/import/chips/p9/procedures/hwp/pm/p9_suspend_powman.C
index 244ef6e9..aa57c10e 100644
--- a/src/import/chips/p9/procedures/hwp/pm/p9_suspend_powman.C
+++ b/src/import/chips/p9/procedures/hwp/pm/p9_suspend_powman.C
@@ -76,6 +76,7 @@ extern "C" {
FAPI_INF("NOTE: This is not the full pm_suspend @todo RTC 147282, 168889");
fapi2::buffer<uint64_t> l_qpmmr_data(0);
+ fapi2::buffer<uint64_t> l_cpmmr_data(0);
l_qpmmr_data.setBit<EQ_QPPM_QPMMR_CME_INTERPPM_IVRM_ENABLE>();
l_qpmmr_data.setBit<EQ_QPPM_QPMMR_CME_INTERPPM_ACLK_ENABLE>();
@@ -83,6 +84,7 @@ extern "C" {
l_qpmmr_data.setBit<EQ_QPPM_QPMMR_CME_INTERPPM_DPLL_ENABLE>();
auto l_quad_vector = i_target.getChildren<fapi2::TARGET_TYPE_EQ>();
+ auto l_core_vector = i_target.getChildren<fapi2::TARGET_TYPE_CORE>();
for (auto quad_it : l_quad_vector)
{
@@ -91,6 +93,15 @@ extern "C" {
}
+ l_cpmmr_data.setBit<C_CPPM_CPMMR_PPM_WRITE_DISABLE>();
+
+
+ for (auto core_it : l_core_vector)
+ {
+ FAPI_TRY(fapi2::putScom(core_it, C_CPPM_CPMMR_CLEAR, l_cpmmr_data), "Error writing to CPMMR");
+
+ }
+
// Real code that will be re-enabled with the todos.
if (0)
OpenPOWER on IntegriCloud