Selaa lähdekoodia

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>
Humphrey Bucknell 16 vuotta sitten
vanhempi
commit
84c4f2f21a
1 muutettua tiedostoa jossa 1 lisäystä ja 1 poistoa
  1. 1 1
      arch/avr32/mach-at32ap/pm-at32ap700x.S

+ 1 - 1
arch/avr32/mach-at32ap/pm-at32ap700x.S

@@ -134,7 +134,7 @@ pm_standby:
 	mov	r11, SDRAMC_LPR_LPCB_SELF_RFR
 	mov	r11, SDRAMC_LPR_LPCB_SELF_RFR
 	bfins	r10, r11, 0, 2		/* LPCB <- self Refresh */
 	bfins	r10, r11, 0, 2		/* LPCB <- self Refresh */
 	sync	0			/* flush write buffer */
 	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]
 	ld.w	r11, r12[SDRAMC_LPR]
 	unmask_interrupts
 	unmask_interrupts
 	sleep	CPU_SLEEP_FROZEN
 	sleep	CPU_SLEEP_FROZEN