diff options
Diffstat (limited to 'arch/sh/mm/pmb.c')
-rw-r--r-- | arch/sh/mm/pmb.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/arch/sh/mm/pmb.c b/arch/sh/mm/pmb.c index 2d009bdcf901..7e64f6d960c5 100644 --- a/arch/sh/mm/pmb.c +++ b/arch/sh/mm/pmb.c | |||
@@ -275,7 +275,7 @@ static void __pmb_unmap(struct pmb_entry *pmbe) | |||
275 | int __uses_jump_to_uncached pmb_init(void) | 275 | int __uses_jump_to_uncached pmb_init(void) |
276 | { | 276 | { |
277 | unsigned int i; | 277 | unsigned int i; |
278 | long size; | 278 | long size, ret; |
279 | 279 | ||
280 | jump_to_uncached(); | 280 | jump_to_uncached(); |
281 | 281 | ||
@@ -287,12 +287,13 @@ int __uses_jump_to_uncached pmb_init(void) | |||
287 | * P1 - provides a cached window onto physical memory | 287 | * P1 - provides a cached window onto physical memory |
288 | * P2 - provides an uncached window onto physical memory | 288 | * P2 - provides an uncached window onto physical memory |
289 | */ | 289 | */ |
290 | size = pmb_remap(P2SEG, __MEMORY_START, __MEMORY_SIZE, | 290 | size = __MEMORY_START + __MEMORY_SIZE; |
291 | PMB_WT | PMB_UB); | ||
292 | BUG_ON(size != __MEMORY_SIZE); | ||
293 | 291 | ||
294 | size = pmb_remap(P1SEG, __MEMORY_START, __MEMORY_SIZE, PMB_C); | 292 | ret = pmb_remap(P1SEG, 0x00000000, size, PMB_C); |
295 | BUG_ON(size != __MEMORY_SIZE); | 293 | BUG_ON(ret != size); |
294 | |||
295 | ret = pmb_remap(P2SEG, 0x00000000, size, PMB_WT | PMB_UB); | ||
296 | BUG_ON(ret != size); | ||
296 | 297 | ||
297 | ctrl_outl(0, PMB_IRMCR); | 298 | ctrl_outl(0, PMB_IRMCR); |
298 | 299 | ||