diff options
-rw-r--r-- | arch/arm/plat-omap/sram.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/arch/arm/plat-omap/sram.c b/arch/arm/plat-omap/sram.c index fa5297d643d..38353386e91 100644 --- a/arch/arm/plat-omap/sram.c +++ b/arch/arm/plat-omap/sram.c | |||
@@ -201,6 +201,15 @@ void __init omap_map_sram(void) | |||
201 | base = OMAP3_SRAM_PA; | 201 | base = OMAP3_SRAM_PA; |
202 | base = ROUND_DOWN(base, PAGE_SIZE); | 202 | base = ROUND_DOWN(base, PAGE_SIZE); |
203 | omap_sram_io_desc[0].pfn = __phys_to_pfn(base); | 203 | omap_sram_io_desc[0].pfn = __phys_to_pfn(base); |
204 | |||
205 | /* | ||
206 | * SRAM must be marked as non-cached on OMAP3 since the | ||
207 | * CORE DPLL M2 divider change code (in SRAM) runs with the | ||
208 | * SDRAM controller disabled, and if it is marked cached, | ||
209 | * the ARM may attempt to write cache lines back to SDRAM | ||
210 | * which will cause the system to hang. | ||
211 | */ | ||
212 | omap_sram_io_desc[0].type = MT_MEMORY_NONCACHED; | ||
204 | } | 213 | } |
205 | 214 | ||
206 | omap_sram_io_desc[0].length = 1024 * 1024; /* Use section desc */ | 215 | omap_sram_io_desc[0].length = 1024 * 1024; /* Use section desc */ |