diff options
Diffstat (limited to 'arch/arm/mach-omap2/memory.c')
| -rw-r--r-- | arch/arm/mach-omap2/memory.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/memory.c b/arch/arm/mach-omap2/memory.c index 85cbc2a2e663..3e5d8cd4ea4f 100644 --- a/arch/arm/mach-omap2/memory.c +++ b/arch/arm/mach-omap2/memory.c | |||
| @@ -30,6 +30,7 @@ | |||
| 30 | #include "prcm-regs.h" | 30 | #include "prcm-regs.h" |
| 31 | #include "memory.h" | 31 | #include "memory.h" |
| 32 | 32 | ||
| 33 | |||
| 33 | static struct memory_timings mem_timings; | 34 | static struct memory_timings mem_timings; |
| 34 | 35 | ||
| 35 | u32 omap2_memory_get_slow_dll_ctrl(void) | 36 | u32 omap2_memory_get_slow_dll_ctrl(void) |
| @@ -99,3 +100,20 @@ void omap2_init_memory_params(u32 force_lock_to_unlock_mode) | |||
| 99 | /* 90 degree phase for anything below 133Mhz + disable DLL filter */ | 100 | /* 90 degree phase for anything below 133Mhz + disable DLL filter */ |
| 100 | mem_timings.slow_dll_ctrl |= ((1 << 1) | (3 << 8)); | 101 | mem_timings.slow_dll_ctrl |= ((1 << 1) | (3 << 8)); |
| 101 | } | 102 | } |
| 103 | |||
| 104 | /* turn on smart idle modes for SDRAM scheduler and controller */ | ||
| 105 | void __init omap2_init_memory(void) | ||
| 106 | { | ||
| 107 | u32 l; | ||
| 108 | |||
| 109 | l = SMS_SYSCONFIG; | ||
| 110 | l &= ~(0x3 << 3); | ||
| 111 | l |= (0x2 << 3); | ||
| 112 | SMS_SYSCONFIG = l; | ||
| 113 | |||
| 114 | l = SDRC_SYSCONFIG; | ||
| 115 | l &= ~(0x3 << 3); | ||
| 116 | l |= (0x2 << 3); | ||
| 117 | SDRC_SYSCONFIG = l; | ||
| 118 | |||
| 119 | } | ||
