diff options
Diffstat (limited to 'arch/arm/mm/init.c')
| -rw-r--r-- | arch/arm/mm/init.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/arch/arm/mm/init.c b/arch/arm/mm/init.c index fd079ff1fc53..c168f322ef8c 100644 --- a/arch/arm/mm/init.c +++ b/arch/arm/mm/init.c | |||
| @@ -486,10 +486,17 @@ static void __init devicemaps_init(struct machine_desc *mdesc) | |||
| 486 | 486 | ||
| 487 | /* | 487 | /* |
| 488 | * Ask the machine support to map in the statically mapped devices. | 488 | * Ask the machine support to map in the statically mapped devices. |
| 489 | * After this point, we can start to touch devices again. | ||
| 490 | */ | 489 | */ |
| 491 | if (mdesc->map_io) | 490 | if (mdesc->map_io) |
| 492 | mdesc->map_io(); | 491 | mdesc->map_io(); |
| 492 | |||
| 493 | /* | ||
| 494 | * Finally flush the tlb again - this ensures that we're in a | ||
| 495 | * consistent state wrt the writebuffer if the writebuffer needs | ||
| 496 | * draining. After this point, we can start to touch devices | ||
| 497 | * again. | ||
| 498 | */ | ||
| 499 | local_flush_tlb_all(); | ||
| 493 | } | 500 | } |
| 494 | 501 | ||
| 495 | /* | 502 | /* |
