diff options
author | Peter Rosin <peda@axentia.se> | 2015-02-05 14:02:09 +0800 |
---|---|---|
committer | Nicolas Ferre <nicolas.ferre@atmel.com> | 2015-03-03 19:43:59 +0100 |
commit | 02f513a0970d97e4fc5f262f5a6c814014af524e (patch) | |
tree | 1608f7b1eaf9cd1e42df3f021031742bdbf68fcc /include/soc | |
parent | ad4a38d2187720a3d1442d693c99675ccd955f32 (diff) | |
download | linux-stable-02f513a0970d97e4fc5f262f5a6c814014af524e.tar.gz linux-stable-02f513a0970d97e4fc5f262f5a6c814014af524e.tar.bz2 linux-stable-02f513a0970d97e4fc5f262f5a6c814014af524e.zip |
pm: at91: Workaround DDRSDRC self-refresh bug with LPDDR1 memories.
The DDRSDR controller fails miserably to put LPDDR1 memories in
self-refresh. Force the controller to think it has DDR2 memories
during the self-refresh period, as the DDR2 self-refresh spec is
equivalent to LPDDR1, and is correctly implemented in the
controller.
Assume that the second controller has the same fault, but that is
untested.
Signed-off-by: Peter Rosin <peda@axentia.se>
Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Diffstat (limited to 'include/soc')
-rw-r--r-- | include/soc/at91/at91sam9_ddrsdr.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/soc/at91/at91sam9_ddrsdr.h b/include/soc/at91/at91sam9_ddrsdr.h index 0210797abf2e..dc10c52e0e91 100644 --- a/include/soc/at91/at91sam9_ddrsdr.h +++ b/include/soc/at91/at91sam9_ddrsdr.h @@ -92,7 +92,7 @@ #define AT91_DDRSDRC_UPD_MR (3 << 20) /* Update load mode register and extended mode register */ #define AT91_DDRSDRC_MDR 0x20 /* Memory Device Register */ -#define AT91_DDRSDRC_MD (3 << 0) /* Memory Device Type */ +#define AT91_DDRSDRC_MD (7 << 0) /* Memory Device Type */ #define AT91_DDRSDRC_MD_SDR 0 #define AT91_DDRSDRC_MD_LOW_POWER_SDR 1 #define AT91_DDRSDRC_MD_LOW_POWER_DDR 3 |