public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Average power consumption in S3?
@ 2005-03-09 14:26 Moritz Muehlenhoff
  2005-03-09 14:40 ` Matthew Garrett
  2005-03-09 17:22 ` Martin Josefsson
  0 siblings, 2 replies; 13+ messages in thread
From: Moritz Muehlenhoff @ 2005-03-09 14:26 UTC (permalink / raw)
  To: linux-kernel

Hi,
I'm using an IBM Thinkpad X31. With stock 2.6.11 and the additional
radeontool to power-off the backlight in suspend, S3 works very well
and reliable. During S3 I've measured a power consumption of 1400
to 1500 mWh (using 512 megabytes of RAM). Is there still room for
optimization? What's the typical amount of energy required for suspend-
to-ram? From friends using iBooks with MacOS X I've heard that they
left the notebook in suspend when leaving for a week and could still
use it after return.

Cheers,
        Moritz

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Average power consumption in S3?
  2005-03-09 14:26 Average power consumption in S3? Moritz Muehlenhoff
@ 2005-03-09 14:40 ` Matthew Garrett
  2005-03-10 17:27   ` Moritz Muehlenhoff
  2005-03-11 19:49   ` Jan De Luyck
  2005-03-09 17:22 ` Martin Josefsson
  1 sibling, 2 replies; 13+ messages in thread
From: Matthew Garrett @ 2005-03-09 14:40 UTC (permalink / raw)
  To: Moritz Muehlenhoff, linux-kernel

Moritz Muehlenhoff <jmm@inutil.org> wrote:

> I'm using an IBM Thinkpad X31. With stock 2.6.11 and the additional
> radeontool to power-off the backlight in suspend, S3 works very well
> and reliable. During S3 I've measured a power consumption of 1400
> to 1500 mWh (using 512 megabytes of RAM). Is there still room for
> optimization? What's the typical amount of energy required for suspend-
> to-ram? From friends using iBooks with MacOS X I've heard that they
> left the notebook in suspend when leaving for a week and could still
> use it after return.

Radeons don't actually power down in D3 unless some registers are set,
and even then the kernel doesn't currently have any code that would put
the Radeon in D3. If you're willing to test something, could you try the
code at

http://www.srcf.ucam.org/~mjg59/radeon/

and do

radeontool power off

immediately before putting the machine into suspend? Make sure that you
do this from something other than X.
-- 
Matthew Garrett | mjg59-chiark.mail.linux-rutgers.kernel@srcf.ucam.org

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Average power consumption in S3?
  2005-03-09 14:26 Average power consumption in S3? Moritz Muehlenhoff
  2005-03-09 14:40 ` Matthew Garrett
@ 2005-03-09 17:22 ` Martin Josefsson
  2005-03-10 18:08   ` Moritz Muehlenhoff
  1 sibling, 1 reply; 13+ messages in thread
From: Martin Josefsson @ 2005-03-09 17:22 UTC (permalink / raw)
  To: Moritz Muehlenhoff; +Cc: linux-kernel

[-- Attachment #1: Type: text/plain, Size: 1336 bytes --]

On Wed, 2005-03-09 at 15:26 +0100, Moritz Muehlenhoff wrote:
> Hi,
> I'm using an IBM Thinkpad X31. With stock 2.6.11 and the additional
> radeontool to power-off the backlight in suspend, S3 works very well
> and reliable. During S3 I've measured a power consumption of 1400
> to 1500 mWh (using 512 megabytes of RAM). Is there still room for
> optimization? What's the typical amount of energy required for suspend-
> to-ram? From friends using iBooks with MacOS X I've heard that they
> left the notebook in suspend when leaving for a week and could still
> use it after return.

I also have an X31 and I noticed that the e1000 has Wake-On-Lan enabled
by default and the S3 code doesn't disable that (kind of defeats the
purpose :)
Disabling that will make the e1000 driver power down the chip during S3.

ethtool -s ethX wol d

I don't know if you have the e1000 or e100 in your machine, but I think
the e100 driver does the same.

I've had mine suspended for 2-3 days at most, actually havn't left it
alone for longer than that in S3 so I'm not really sure how much power
it consumes, but I'd say it's 1-2 percent of the total capacity per
hour, so somewhere below 1000mW.

I also use the standard radeontool to disable the backlight, I'll test
the version Matthew pointed out some day.

-- 
/Martin

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Average power consumption in S3?
  2005-03-09 14:40 ` Matthew Garrett
@ 2005-03-10 17:27   ` Moritz Muehlenhoff
  2005-03-11 19:49   ` Jan De Luyck
  1 sibling, 0 replies; 13+ messages in thread
From: Moritz Muehlenhoff @ 2005-03-10 17:27 UTC (permalink / raw)
  To: Matthew Garrett; +Cc: linux-kernel

Matthew Garrett wrote:
> Radeons don't actually power down in D3 unless some registers are set,
> and even then the kernel doesn't currently have any code that would put
> the Radeon in D3. If you're willing to test something, could you try the
> code at
> 
> http://www.srcf.ucam.org/~mjg59/radeon/
> 
> immediately before putting the machine into suspend? Make sure that you
> do this from something other than X.

This reduces power consumption from ca. 1500 to ca. 1200 mWh, so it's
already a huge improvement, but with 1.5 days of maximal suspend still
pretty far away from a week.

Cheers,
        Moritz

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Average power consumption in S3?
  2005-03-09 17:22 ` Martin Josefsson
@ 2005-03-10 18:08   ` Moritz Muehlenhoff
  2005-03-11  3:46     ` Theodore Ts'o
  0 siblings, 1 reply; 13+ messages in thread
From: Moritz Muehlenhoff @ 2005-03-10 18:08 UTC (permalink / raw)
  To: Martin Josefsson; +Cc: Moritz Muehlenhoff, linux-kernel

Martin Josefsson wrote:
> I also have an X31 and I noticed that the e1000 has Wake-On-Lan enabled
> by default and the S3 code doesn't disable that (kind of defeats the
> purpose :)
> Disabling that will make the e1000 driver power down the chip during S3.
> 
> I've had mine suspended for 2-3 days at most, actually havn't left it
> alone for longer than that in S3 so I'm not really sure how much power
> it consumes, but I'd say it's 1-2 percent of the total capacity per
> hour, so somewhere below 1000mW.

I've got the e100 and with WOL disabled and Matthew's hacked radeontool
power consumption decreases to 970 mWh.

Cheers,
        Moritz

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Average power consumption in S3?
  2005-03-10 18:08   ` Moritz Muehlenhoff
@ 2005-03-11  3:46     ` Theodore Ts'o
  2005-03-11  4:51       ` Benjamin Herrenschmidt
  0 siblings, 1 reply; 13+ messages in thread
From: Theodore Ts'o @ 2005-03-11  3:46 UTC (permalink / raw)
  To: Moritz Muehlenhoff; +Cc: Martin Josefsson, linux-kernel

[-- Attachment #1: Type: text/plain, Size: 781 bytes --]

On Thu, Mar 10, 2005 at 07:08:26PM +0100, Moritz Muehlenhoff wrote:
> I've got the e100 and with WOL disabled and Matthew's hacked radeontool
> power consumption decreases to 970 mWh.

I have a T40p, and with the following patches (versus 2.6.11) and the
following sleep script, I have power consuption down to 580 mWh.

The 05-radeonfb-Thinkpad-Power.patch will have to patched with your
specific Thinkpad model number, or booted with the force_sleep option.
See the Linux thinkpad mailing list (linux-thinkpad@linux-thinkpad.org) 
archives for more information.

Warning: The 05-radeonfb-Thinkpad-Power.patch is not quite ready for
merging, but compared to completely pathetic battery life when using
ACPI's suspend-to-memory without them, it's definitely worth it.

						- Ted

[-- Attachment #2: 01-acpi-sleep-while-atomic-during-s3-resume-from-ram.patch --]
[-- Type: text/plain, Size: 1632 bytes --]


From: Christian Borntraeger <linux-kernel@borntraeger.net>

During the wakeup from suspend-to-ram I get several warnings.

Signed-off-by: Christian Borntraeger <linux-kernel@borntraeger.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 25-akpm/drivers/acpi/osl.c      |    4 ++--
 25-akpm/drivers/acpi/pci_link.c |    2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff -puN drivers/acpi/osl.c~acpi-sleep-while-atomic-during-s3-resume-from-ram drivers/acpi/osl.c
--- 25/drivers/acpi/osl.c~acpi-sleep-while-atomic-during-s3-resume-from-ram	2005-01-16 00:45:23.784364208 -0800
+++ 25-akpm/drivers/acpi/osl.c	2005-01-16 00:45:23.789363448 -0800
@@ -145,7 +145,7 @@ acpi_os_vprintf(const char *fmt, va_list
 void *
 acpi_os_allocate(acpi_size size)
 {
-	return kmalloc(size, GFP_KERNEL);
+	return kmalloc(size, GFP_ATOMIC);
 }
 
 void
@@ -905,7 +905,7 @@ acpi_os_wait_semaphore(
 
 	ACPI_DEBUG_PRINT ((ACPI_DB_MUTEX, "Waiting for semaphore[%p|%d|%d]\n", handle, units, timeout));
 
-	if (in_atomic())
+	if (in_atomic() || irqs_disabled())
 		timeout = 0;
 
 	switch (timeout)
diff -puN drivers/acpi/pci_link.c~acpi-sleep-while-atomic-during-s3-resume-from-ram drivers/acpi/pci_link.c
--- 25/drivers/acpi/pci_link.c~acpi-sleep-while-atomic-during-s3-resume-from-ram	2005-01-16 00:45:23.785364056 -0800
+++ 25-akpm/drivers/acpi/pci_link.c	2005-01-16 00:45:23.790363296 -0800
@@ -315,7 +315,7 @@ acpi_pci_link_set (
 	if (!link || !irq)
 		return_VALUE(-EINVAL);
 
-	resource = kmalloc( sizeof(*resource)+1, GFP_KERNEL);
+	resource = kmalloc( sizeof(*resource)+1, GFP_ATOMIC);
 	if(!resource)
 		return_VALUE(-ENOMEM);
 
_

[-- Attachment #3: 02-acpi-sleep-while-atomic.patch --]
[-- Type: text/plain, Size: 655 bytes --]

This is needed to remove another sleeping function called from invalid 
context error message when resuming from sleep.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>


Index: src/drivers/acpi/utils.c
===================================================================
--- src.orig/drivers/acpi/utils.c	2005-03-03 13:08:44.000000000 -0500
+++ src/drivers/acpi/utils.c	2005-03-03 13:10:04.000000000 -0500
@@ -252,7 +252,7 @@
 	if (!data)
 		return_ACPI_STATUS(AE_BAD_PARAMETER);
 
-	element = kmalloc(sizeof(union acpi_object), GFP_KERNEL);
+	element = kmalloc(sizeof(union acpi_object), GFP_ATOMIC);
 	if(!element)
 		return_ACPI_STATUS(AE_NO_MEMORY);
 

[-- Attachment #4: 05-radeonfb-Thinkpad-Power.patch --]
[-- Type: text/plain, Size: 5233 bytes --]

===== drivers/video/aty/radeon_base.c 1.40 vs edited =====
--- 1.40/drivers/video/aty/radeon_base.c	2005-02-15 21:25:30 -05:00
+++ edited/drivers/video/aty/radeon_base.c	2005-02-17 20:30:48 -05:00
@@ -273,6 +273,9 @@
 #ifdef CONFIG_MTRR
 static int nomtrr = 0;
 #endif
+#if defined(CONFIG_PM) && defined(CONFIG_X86)
+int radeon_force_sleep = 0;
+#endif
 
 /*
  * prototypes
@@ -2535,6 +2538,10 @@
 			force_measure_pll = 1;
 		} else if (!strncmp(this_opt, "ignore_edid", 11)) {
 			ignore_edid = 1;
+#if defined(CONFIG_PM) && defined(CONFIG_X86)
+		} else if (!strncmp(this_opt, "force_sleep", 11)) {
+			radeon_force_sleep = 1;
+#endif
 		} else
 			mode_option = this_opt;
 	}
@@ -2574,3 +2581,5 @@
 MODULE_PARM_DESC(panel_yres, "int: set panel yres");
 module_param(mode_option, charp, 0);
 MODULE_PARM_DESC(mode_option, "Specify resolution as \"<xres>x<yres>[-<bpp>][@<refresh>]\" ");
+module_param(radeon_force_sleep, int, 0);
+MODULE_PARM_DESC(radeon_force_sleep, "bool: force ACPI sleep mode on untested machines");
===== drivers/video/aty/radeon_pm.c 1.10 vs edited =====
--- 1.10/drivers/video/aty/radeon_pm.c	2005-02-12 23:01:11 -05:00
+++ edited/drivers/video/aty/radeon_pm.c	2005-02-17 20:23:57 -05:00
@@ -25,8 +25,97 @@
 #include <asm/pmac_feature.h>
 #endif
 
+/* For detecting supported PC laptops */
+#ifdef CONFIG_X86
+#include <linux/dmi.h>
+#endif
+
 #include "ati_ids.h"
 
+#ifdef CONFIG_X86
+/* This array holds a list of supported PC laptops.
+ * Currently only few IBM models are tested.
+ * If you want to experiment, use dmidecode to find out
+ * vendor and product codes for Your laptop.
+ */
+static struct dmi_system_id __devinitdata radeonfb_dmi_table[] = {
+	{
+		.ident = "IBM ThinkPad R40 (2722-B3G)",
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "IBM"),
+			DMI_MATCH(DMI_PRODUCT_NAME, "2722B3G"),
+		},
+	},
+	{
+		.ident = "IBM ThinkPad R51 (1829-9MG)",
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "IBM"),
+			DMI_MATCH(DMI_PRODUCT_NAME, "18299MG"),
+  	      },
+	},
+	{
+		.ident = "IBM ThinkPad T40 (2373-92G)",
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "IBM"),
+			DMI_MATCH(DMI_PRODUCT_NAME, "237392G"),
+  	      },
+	},
+	{
+		.ident = "IBM ThinkPad T40 (2373-8CG)",
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "IBM"),
+			DMI_MATCH(DMI_PRODUCT_NAME, "23738CG"),
+		},
+	},
+	{
+		.ident = "IBM ThinkPad T40 (2373-94U)",
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "IBM"),
+			DMI_MATCH(DMI_PRODUCT_NAME, "237394U"),
+		},
+	},
+	{
+		.ident = "IBM ThinkPad T40p (2373-G1U)",
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "IBM"),
+			DMI_MATCH(DMI_PRODUCT_NAME, "2373G1U"),
+		},
+	},
+	{
+		.ident = "IBM ThinkPad T41 (2373-2FG)",
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "IBM"),
+			DMI_MATCH(DMI_PRODUCT_NAME, "23732FG"),
+		},
+	},
+	{
+		.ident = "IBM ThinkPad T41 (2378-DEU)",
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "IBM"),
+			DMI_MATCH(DMI_PRODUCT_NAME, "2378DEU"),
+		},
+	},
+	{
+		/* Reported by Volker Braun <vbraun@physics.upenn.edu> */
+		.ident = "IBM ThinkPad T41 (2379-DJU)",
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "IBM"),
+			DMI_MATCH(DMI_PRODUCT_NAME, "2379DJU"),
+		},
+	},
+	{
+		.ident = "IBM ThinkPad T42 (2373-FWG)",
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "IBM"),
+			DMI_MATCH(DMI_PRODUCT_NAME, "2373FWG"),
+		},
+	},
+	{ },
+};
+
+extern int radeon_force_sleep;
+#endif
+
 void radeon_pm_disable_dynamic_mode(struct radeonfb_info *rinfo)
 {
 	u32 tmp;
@@ -853,6 +942,13 @@
 	tmp = INPLL( pllMCLK_MISC) | MCLK_MISC__EN_MCLK_TRISTATE_IN_SUSPEND;
 	OUTPLL( pllMCLK_MISC, tmp);
 	
+ 	/* BUS_CNTL1__MOBILE_PLATORM_SEL setting is northbridge chipset
+ 	 * and radeon chip dependent. Thus we only enable it on Mac for
+ 	 * now (until we get more info on how to compute the correct 
+ 	 * value for various X86 bridges).
+ 	 */
+ 
+#ifdef CONFIG_PPC_PMAC
 	/* AGP PLL control */
 	if (rinfo->family <= CHIP_FAMILY_RV280) {
 		OUTREG(BUS_CNTL1, INREG(BUS_CNTL1) |  BUS_CNTL1__AGPCLK_VALID);
@@ -864,6 +960,7 @@
 		OUTREG(BUS_CNTL1, INREG(BUS_CNTL1));
 		OUTREG(BUS_CNTL1, (INREG(BUS_CNTL1) & ~0x4000) | 0x8000);
 	}
+#endif
 
 	OUTREG(CRTC_OFFSET_CNTL, (INREG(CRTC_OFFSET_CNTL)
 				  & ~CRTC_OFFSET_CNTL__CRTC_STEREO_SYNC_OUT_EN));
@@ -2750,6 +2847,29 @@
 #endif
 	}
 #endif /* defined(CONFIG_PM) && defined(CONFIG_PPC_OF) */
+
+/* The PM code also works on some PC laptops.
+ * Only a few models are actually tested so Your mileage may vary.
+ * We can do D2 on at least M7 and M9 on some IBM ThinkPad T41 models.
+ */
+#if defined(CONFIG_PM) && defined(CONFIG_X86)
+	if (radeon_force_sleep || dmi_check_system(radeonfb_dmi_table)) {
+		if (radeon_force_sleep)
+			printk("radeonfb: forcefully enabling sleep mode\n");
+		else
+			printk("radeonfb: enabling sleep mode\n");
+
+		if (rinfo->is_mobility && rinfo->pm_reg &&
+		    rinfo->family <= CHIP_FAMILY_RV250)
+			rinfo->pm_mode |= radeon_pm_d2;
+
+		/* Power down TV DAC, that saves a significant amount of power,
+		 * we'll have something better once we actually have some TVOut
+		 * support
+		 */
+		OUTREG(TV_DAC_CNTL, INREG(TV_DAC_CNTL) | 0x07000000);
+	}
+#endif /* defined(CONFIG_PM) && defined(CONFIG_X86) */
 }
 
 void radeonfb_pm_exit(struct radeonfb_info *rinfo)

[-- Attachment #5: suspend-mem --]
[-- Type: text/plain, Size: 998 bytes --]

#!/bin/bash

echo "--------" >> /tmp/suspend.log
echo "Suspending to memory..." >> /tmp/suspend.log
date >> /tmp/suspend.log
cat /proc/acpi/battery/BAT0/state >> /tmp/suspend.log


echo "7 blink" >/proc/acpi/ibm/led
echo "4 off" >/proc/acpi/ibm/led

/sbin/hotplug stop 

/sbin/hwclock --systohc

statedir=/root/s3/state
curcons=`fgconsole`
fuser /dev/tty$curcons 2>/dev/null|xargs ps -o comm= -p|grep -q X && chvt 2
cat /dev/vcsa >$statedir/vcsa
ethtool -s ethX wol d
sync
echo 3 >/proc/acpi/sleep

echo "Resuming... " >> /tmp/suspend.log
date >> /tmp/suspend.log
cat /proc/acpi/battery/BAT0/state >> /tmp/suspend.log

sync

/sbin/hwclock --hctosys

/sbin/hotplug start

echo "4 on" >/proc/acpi/ibm/led
echo "7 off" >/proc/acpi/ibm/led

vbetool post
vbetool vbestate restore <$statedir/vbe
cat $statedir/vcsa >/dev/vcsa
#rckbd restart
chvt $[curcons%6+1]
chvt $curcons

echo "Resume finished... " >> /tmp/suspend.log
date >> /tmp/suspend.log
cat /proc/acpi/battery/BAT0/state >> /tmp/suspend.log



^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Average power consumption in S3?
  2005-03-11  3:46     ` Theodore Ts'o
@ 2005-03-11  4:51       ` Benjamin Herrenschmidt
  2005-03-11 17:44         ` Theodore Ts'o
  2005-03-11 19:39         ` Bill Davidsen
  0 siblings, 2 replies; 13+ messages in thread
From: Benjamin Herrenschmidt @ 2005-03-11  4:51 UTC (permalink / raw)
  To: Theodore Ts'o; +Cc: Moritz Muehlenhoff, Martin Josefsson, Linux Kernel list

On Thu, 2005-03-10 at 22:46 -0500, Theodore Ts'o wrote:
> On Thu, Mar 10, 2005 at 07:08:26PM +0100, Moritz Muehlenhoff wrote:
> > I've got the e100 and with WOL disabled and Matthew's hacked radeontool
> > power consumption decreases to 970 mWh.
> 
> I have a T40p, and with the following patches (versus 2.6.11) and the
> following sleep script, I have power consuption down to 580 mWh.
> 
> The 05-radeonfb-Thinkpad-Power.patch will have to patched with your
> specific Thinkpad model number, or booted with the force_sleep option.
> See the Linux thinkpad mailing list (linux-thinkpad@linux-thinkpad.org) 
> archives for more information.
> 
> Warning: The 05-radeonfb-Thinkpad-Power.patch is not quite ready for
> merging, but compared to completely pathetic battery life when using
> ACPI's suspend-to-memory without them, it's definitely worth it.

Hi Ted !

Hopefully, somebody is gathering those patches. I intend to merge them
all at one point, though I can't promise it will happen before 2.6.12.

It would be good to "ping" me regulary though ;)

I've sort-of been waiting for ATI to tell me how to retreive the proper
memory register setting from the BIOS, since the code in there currently
is quite powerbook specific, and might not write the exact correct value
on all models. I suppose it works fine on yours so far, but I'd rather
have a way to know the right value ... unfortunately, they didn't reply
on this request.

Ben.



^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Average power consumption in S3?
  2005-03-11  4:51       ` Benjamin Herrenschmidt
@ 2005-03-11 17:44         ` Theodore Ts'o
  2005-03-11 23:48           ` Benjamin Herrenschmidt
  2005-03-11 19:39         ` Bill Davidsen
  1 sibling, 1 reply; 13+ messages in thread
From: Theodore Ts'o @ 2005-03-11 17:44 UTC (permalink / raw)
  To: Benjamin Herrenschmidt
  Cc: Moritz Muehlenhoff, Martin Josefsson, Volker Braun,
	Linux Kernel list

On Fri, Mar 11, 2005 at 03:51:19PM +1100, Benjamin Herrenschmidt wrote:
> I've sort-of been waiting for ATI to tell me how to retreive the proper
> memory register setting from the BIOS, since the code in there currently
> is quite powerbook specific, and might not write the exact correct value
> on all models. I suppose it works fine on yours so far, but I'd rather
> have a way to know the right value ... unfortunately, they didn't reply
> on this request.

There have been probably about 40 or 50 positive reports from people
on a wide variety of Thinkpad laptops (most generally recent models)
where it has worked.  There were two that didn't, but it wasn't clear
at least to me whether they were true incompatibilities or unrelated
problems caused by old BIOS levels, et. al.   

What I would suggest doing is changing the code to use a blacklist
instead of a whitelist, and make it optional with a CONFIG option that
is marked experimental, and then get it into the mainline for
additional testing.  If we can get ATI to give us the right way to do
it, great, but if they aren't being responsive, maybe we should just
do it empirically.

						- Ted

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Average power consumption in S3?
  2005-03-11  4:51       ` Benjamin Herrenschmidt
  2005-03-11 17:44         ` Theodore Ts'o
@ 2005-03-11 19:39         ` Bill Davidsen
  1 sibling, 0 replies; 13+ messages in thread
From: Bill Davidsen @ 2005-03-11 19:39 UTC (permalink / raw)
  To: Benjamin Herrenschmidt
  Cc: Theodore Ts'o, Moritz Muehlenhoff, Martin Josefsson,
	Linux Kernel list

Benjamin Herrenschmidt wrote:

> I've sort-of been waiting for ATI to tell me how to retreive the proper
> memory register setting from the BIOS, since the code in there currently
> is quite powerbook specific, and might not write the exact correct value
> on all models. I suppose it works fine on yours so far, but I'd rather
> have a way to know the right value ... unfortunately, they didn't reply
> on this request.

Any chance that it will apply to other Radeon based machines? I have an 
ASUS (1681) using the 8700 chipset. At the moment suspecd doesn't work 
at all, but at least somewhere in 2.6.10+ turning off the backlight 
started working with the screen saver.

I guess it's better than my Dell and Toshiba laptops, which suspecnd but 
don't resume :-(

-- 
    -bill davidsen (davidsen@tmr.com)
"The secret to procrastination is to put things off until the
  last possible moment - but no longer"  -me

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Average power consumption in S3?
  2005-03-09 14:40 ` Matthew Garrett
  2005-03-10 17:27   ` Moritz Muehlenhoff
@ 2005-03-11 19:49   ` Jan De Luyck
  1 sibling, 0 replies; 13+ messages in thread
From: Jan De Luyck @ 2005-03-11 19:49 UTC (permalink / raw)
  To: linux-kernel; +Cc: Matthew Garrett, Moritz Muehlenhoff

On Wednesday 09 March 2005 15:40, Matthew Garrett wrote:
> Moritz Muehlenhoff <jmm@inutil.org> wrote:
> > I'm using an IBM Thinkpad X31. With stock 2.6.11 and the additional
> > radeontool to power-off the backlight in suspend, S3 works very well
> > and reliable. During S3 I've measured a power consumption of 1400
> > to 1500 mWh (using 512 megabytes of RAM). Is there still room for
> > optimization? What's the typical amount of energy required for suspend-
> > to-ram? From friends using iBooks with MacOS X I've heard that they
> > left the notebook in suspend when leaving for a week and could still
> > use it after return.
>
> Radeons don't actually power down in D3 unless some registers are set,
> and even then the kernel doesn't currently have any code that would put
> the Radeon in D3. If you're willing to test something, could you try the
> code at
>
> http://www.srcf.ucam.org/~mjg59/radeon/
>
> and do
>
> radeontool power off
>
> immediately before putting the machine into suspend? Make sure that you
> do this from something other than X.

Small question, can this tool do what the boot-radeon tool can? That way I can 
scrap another one in my suspend-to-ram tricks ;p

Jan

-- 
  I tripped over a hole that was sticking up out of the ground.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Average power consumption in S3?
  2005-03-11 17:44         ` Theodore Ts'o
@ 2005-03-11 23:48           ` Benjamin Herrenschmidt
  2005-03-12  4:58             ` Theodore Ts'o
  0 siblings, 1 reply; 13+ messages in thread
From: Benjamin Herrenschmidt @ 2005-03-11 23:48 UTC (permalink / raw)
  To: Theodore Ts'o
  Cc: Moritz Muehlenhoff, Martin Josefsson, Volker Braun,
	Linux Kernel list


> What I would suggest doing is changing the code to use a blacklist
> instead of a whitelist, and make it optional with a CONFIG option that
> is marked experimental, and then get it into the mainline for
> additional testing.  If we can get ATI to give us the right way to do
> it, great, but if they aren't being responsive, maybe we should just
> do it empirically.

I'm hesitant to switch a whitelist because of a couple of settings in
there that are specific to the way the chip is wired on the mobo.
Apparently, thinkpads are similar enough to Macs, but I wouldn't bet on
this beeing "commmon"...

Also, the code in there switches to D2, not D3 and is only for M6,M7 and
M9 for now. I may be able to produce code for the M10 as well based on
some dumps we did from the MacOS driver, paulus wrote something that we
ended up not using because the chip is actually powered down on Macs
with the M10.

Then, there is the problem of machines where the chip is powered down
during sleep... I can re-POST an rv280 (M9+) and an M10 but only in
"graphics" mode, not the VGA side for which I know nothing about, with
the same possible issue about video RAM mode register setting.

Ben.



^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Average power consumption in S3?
  2005-03-11 23:48           ` Benjamin Herrenschmidt
@ 2005-03-12  4:58             ` Theodore Ts'o
  2005-03-12  5:21               ` Benjamin Herrenschmidt
  0 siblings, 1 reply; 13+ messages in thread
From: Theodore Ts'o @ 2005-03-12  4:58 UTC (permalink / raw)
  To: Benjamin Herrenschmidt
  Cc: Moritz Muehlenhoff, Martin Josefsson, Volker Braun,
	Linux Kernel list

On Sat, Mar 12, 2005 at 10:48:21AM +1100, Benjamin Herrenschmidt wrote:
> 
> I'm hesitant to switch a whitelist because of a couple of settings in
> there that are specific to the way the chip is wired on the mobo.
> Apparently, thinkpads are similar enough to Macs, but I wouldn't bet on
> this beeing "commmon"...

If this is true, then ATI probably won't be able to tell us anything
useful, so we're only going to find out if people in the Thinkpad
division are willing to tell us something useful (and their track
record for being helpful has not been particularly stellar).

And what I was thinking about doing was having the CONFIG option only
do it for machines that were detected as being IBM Thinkpads, not all
Radeon chips.  The blacklist would be for specific IBM thinkpad
models; what I'm guessing here is that it's likely that all or most
modern IBM thinkpads are going to be wired the same way on the
motherboard.  

						- Ted

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Average power consumption in S3?
  2005-03-12  4:58             ` Theodore Ts'o
@ 2005-03-12  5:21               ` Benjamin Herrenschmidt
  0 siblings, 0 replies; 13+ messages in thread
From: Benjamin Herrenschmidt @ 2005-03-12  5:21 UTC (permalink / raw)
  To: Theodore Ts'o
  Cc: Moritz Muehlenhoff, Martin Josefsson, Volker Braun,
	Linux Kernel list

On Fri, 2005-03-11 at 23:58 -0500, Theodore Ts'o wrote:

> If this is true, then ATI probably won't be able to tell us anything
> useful, so we're only going to find out if people in the Thinkpad
> division are willing to tell us something useful (and their track
> record for being helpful has not been particularly stellar).
> 
> And what I was thinking about doing was having the CONFIG option only
> do it for machines that were detected as being IBM Thinkpads, not all
> Radeon chips.  The blacklist would be for specific IBM thinkpad
> models; what I'm guessing here is that it's likely that all or most
> modern IBM thinkpads are going to be wired the same way on the
> motherboard.  

Fine with me then.


^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2005-03-12  5:22 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-03-09 14:26 Average power consumption in S3? Moritz Muehlenhoff
2005-03-09 14:40 ` Matthew Garrett
2005-03-10 17:27   ` Moritz Muehlenhoff
2005-03-11 19:49   ` Jan De Luyck
2005-03-09 17:22 ` Martin Josefsson
2005-03-10 18:08   ` Moritz Muehlenhoff
2005-03-11  3:46     ` Theodore Ts'o
2005-03-11  4:51       ` Benjamin Herrenschmidt
2005-03-11 17:44         ` Theodore Ts'o
2005-03-11 23:48           ` Benjamin Herrenschmidt
2005-03-12  4:58             ` Theodore Ts'o
2005-03-12  5:21               ` Benjamin Herrenschmidt
2005-03-11 19:39         ` Bill Davidsen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox