Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 10 Nov 2010 20:28:10 +0000 (UTC)
From:      Nathan Whitehorn <nwhitehorn@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r215101 - head/sys/powerpc/powerpc
Message-ID:  <201011102028.oAAKSA8G036701@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: nwhitehorn
Date: Wed Nov 10 20:28:10 2010
New Revision: 215101
URL: http://svn.freebsd.org/changeset/base/215101

Log:
  Entering deep nap mode on the 970MP requires that both MSR[NAP] and
  MSR[DEEPNAP] be set, not just MSR[DEEPNAP]. Fixing this reduces the idle
  temperature of my CPUs from 57 to 38 degrees and makes one-shot timer
  mode work properly.
  
  Hint from:	mav
  MFC after:	4 days

Modified:
  head/sys/powerpc/powerpc/cpu.c

Modified: head/sys/powerpc/powerpc/cpu.c
==============================================================================
--- head/sys/powerpc/powerpc/cpu.c	Wed Nov 10 20:09:05 2010	(r215100)
+++ head/sys/powerpc/powerpc/cpu.c	Wed Nov 10 20:28:10 2010	(r215101)
@@ -455,8 +455,8 @@ cpu_970_setup(int cpuid, uint16_t vers)
 	/* Configure power-saving mode */
 	switch (vers) {
 	case IBM970MP:
-		hid0_hi |= (HID0_DEEPNAP | HID0_DPM);
-		hid0_hi &= ~(HID0_DOZE | HID0_NAP);
+		hid0_hi |= (HID0_DEEPNAP | HID0_NAP | HID0_DPM);
+		hid0_hi &= ~HID0_DOZE;
 		break;
 	default:
 		hid0_hi |= (HID0_NAP | HID0_DPM);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201011102028.oAAKSA8G036701>