summaryrefslogtreecommitdiffstats
path: root/arch/avr32
diff options
context:
space:
mode:
authorHumphrey Bucknell <hbucknell@saitek.com>2008-08-29 17:27:00 +0200
committerHaavard Skinnemoen <haavard.skinnemoen@atmel.com>2008-09-01 13:04:09 +0200
commit84c4f2f21a8e6e6d4bdfff95bf5ddc7925df4e01 (patch)
treee18e4dff39c14edca1f0dcb084bdb0762107dfbd /arch/avr32
parentavr32: Fix lockup after Java stack underflow in user mode (diff)
downloadlinux-84c4f2f21a8e6e6d4bdfff95bf5ddc7925df4e01.tar.xz
linux-84c4f2f21a8e6e6d4bdfff95bf5ddc7925df4e01.zip
avr32: pm_standby low-power ram bug fix
The value stored into the SDRAMC LPR register should be the current value of the register with the Self-refresh value set in the lower bit field. The bug involved only the Self-refresh value being written to the register, thus over writing any low-power ram settings. Signed-off-by: Humphrey Bucknell <hbucknell@saitek.com> Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
Diffstat (limited to 'arch/avr32')
-rw-r--r--arch/avr32/mach-at32ap/pm-at32ap700x.S2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/avr32/mach-at32ap/pm-at32ap700x.S b/arch/avr32/mach-at32ap/pm-at32ap700x.S
index 5be4de65b209..17503b0ed6c9 100644
--- a/arch/avr32/mach-at32ap/pm-at32ap700x.S
+++ b/arch/avr32/mach-at32ap/pm-at32ap700x.S
@@ -134,7 +134,7 @@ pm_standby:
mov r11, SDRAMC_LPR_LPCB_SELF_RFR
bfins r10, r11, 0, 2 /* LPCB <- self Refresh */
sync 0 /* flush write buffer */
- st.w r12[SDRAMC_LPR], r11 /* put SDRAM in self-refresh mode */
+ st.w r12[SDRAMC_LPR], r10 /* put SDRAM in self-refresh mode */
ld.w r11, r12[SDRAMC_LPR]
unmask_interrupts
sleep CPU_SLEEP_FROZEN