From b866f4173f605d8dcdf83b3239dd7fb9a5a8768b Mon Sep 17 00:00:00 2001 From: Patrick Williams Date: Tue, 17 Jul 2012 21:57:58 -0500 Subject: Execute 'doze' in idle loop. Change-Id: Ifd611129c2d7173b5e0dec36c870e06a4d851009 Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/1384 Tested-by: Jenkins Server Reviewed-by: Douglas R. Gilbert Reviewed-by: Daniel M. Crowell Reviewed-by: A. Patrick Williams III --- src/kernel/misc.C | 48 ++++++++++++++++++++++++++---------------------- 1 file changed, 26 insertions(+), 22 deletions(-) (limited to 'src/kernel/misc.C') diff --git a/src/kernel/misc.C b/src/kernel/misc.C index 74be12de1..a29aaea21 100644 --- a/src/kernel/misc.C +++ b/src/kernel/misc.C @@ -1,25 +1,26 @@ -// IBM_PROLOG_BEGIN_TAG -// This is an automatically generated prolog. -// -// $Source: src/kernel/misc.C $ -// -// IBM CONFIDENTIAL -// -// COPYRIGHT International Business Machines Corp. 2011 -// -// p1 -// -// Object Code Only (OCO) source materials -// Licensed Internal Code Source Materials -// IBM HostBoot Licensed Internal Code -// -// The source code for this program is not published or other- -// wise divested of its trade secrets, irrespective of what has -// been deposited with the U.S. Copyright Office. -// -// Origin: 30 -// -// IBM_PROLOG_END +/* IBM_PROLOG_BEGIN_TAG + * This is an automatically generated prolog. + * + * $Source: src/kernel/misc.C $ + * + * IBM CONFIDENTIAL + * + * COPYRIGHT International Business Machines Corp. 2011-2012 + * + * p1 + * + * Object Code Only (OCO) source materials + * Licensed Internal Code Source Materials + * IBM HostBoot Licensed Internal Code + * + * The source code for this program is not published or other- + * wise divested of its trade secrets, irrespective of what has + * been deposited with the U.S. Copyright Office. + * + * Origin: 30 + * + * IBM_PROLOG_END_TAG + */ #include #include #include @@ -84,6 +85,9 @@ namespace KernelMisc printk("No payload... doze'ing all threads.\n"); } + // Clear LPCR values that wakes up from doze. LPCR[49, 50, 51] + setLPCR(getLPCR() & (~0x0000000000007000)); + while(1) { doze(); -- cgit v1.2.3