public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] Fix for Atmel AT91 powersaving
@ 2009-01-31 13:55 Andrei Birjukov
  2009-02-02 20:54 ` Andrew Victor
  0 siblings, 1 reply; 2+ messages in thread
From: Andrei Birjukov @ 2009-01-31 13:55 UTC (permalink / raw)
  To: linux; +Cc: linux-kernel

Hello,

We've discovered that our AT91SAM9260 board consumed too much power when 
returning from a slowclock low-power mode. RAM self-refresh is enabled 
in a bootloader in our case, this is how we saw a difference. Estimated 
ca. 30mA more on 4V battery than the same state before powersaving. 
After a small research we found that there seems to be a bogus 
sdram_selfrefresh_disable() call at the end of at91_pm_enter() call, 
which overwrites the LPR register with uninitialized value. Please find 
the suggested patch attached.

The below patch is tested and works ok. The patch was generated against 
a 2.6.28 kernel with no additional patches.

Regards,
andrei

---
This patch fixes correct restoring of LPR register of the Atmel AT91 
SDRAM controller
when returning from a power saving mode.

Signed-off-by: Andrei Birjukov <andrei.birjukov@artecdesign.ee>

---
diff -purN linux-2.6.28-clean/arch/arm/mach-at91/pm.c 
linux-2.6.28/arch/arm/mach-at91/pm.c
--- linux-2.6.28-clean/arch/arm/mach-at91/pm.c    2008-12-25 
01:26:37.000000000 +0200
+++ linux-2.6.28/arch/arm/mach-at91/pm.c    2009-01-20 
13:00:01.000000000 +0200
@@ -332,7 +332,6 @@ static int at91_pm_enter(suspend_state_t
             at91_sys_read(AT91_AIC_IPR) & at91_sys_read(AT91_AIC_IMR));
 
 error:
-    sdram_selfrefresh_disable();
     target_state = PM_SUSPEND_ON;
     at91_irq_resume();
     at91_gpio_resume();


-- 
Andrei Birjukov
Embedded Software Engineer
Artec Design LLC
Akadeemia tee 23a, 12618, Tallinn, Estonia
Phone: +3726718559
Fax: +3726718555
GSM: +37256908939
E-mail: andrei.birjukov@artecdesign.ee
WWW: http://www.artecdesign.com


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

end of thread, other threads:[~2009-02-02 20:54 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-01-31 13:55 [PATCH] Fix for Atmel AT91 powersaving Andrei Birjukov
2009-02-02 20:54 ` Andrew Victor

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