diff options
Diffstat (limited to 'arch/arm/mm/proc-v7.S')
| -rw-r--r-- | arch/arm/mm/proc-v7.S | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/arch/arm/mm/proc-v7.S b/arch/arm/mm/proc-v7.S index 5c6d5a3050ea..0b5462a941a6 100644 --- a/arch/arm/mm/proc-v7.S +++ b/arch/arm/mm/proc-v7.S | |||
| @@ -75,14 +75,15 @@ ENTRY(cpu_v7_do_idle) | |||
| 75 | ENDPROC(cpu_v7_do_idle) | 75 | ENDPROC(cpu_v7_do_idle) |
| 76 | 76 | ||
| 77 | ENTRY(cpu_v7_dcache_clean_area) | 77 | ENTRY(cpu_v7_dcache_clean_area) |
| 78 | ALT_SMP(mov pc, lr) @ MP extensions imply L1 PTW | 78 | ALT_SMP(W(nop)) @ MP extensions imply L1 PTW |
| 79 | ALT_UP(W(nop)) | 79 | ALT_UP_B(1f) |
| 80 | dcache_line_size r2, r3 | 80 | mov pc, lr |
| 81 | 1: mcr p15, 0, r0, c7, c10, 1 @ clean D entry | 81 | 1: dcache_line_size r2, r3 |
| 82 | 2: mcr p15, 0, r0, c7, c10, 1 @ clean D entry | ||
| 82 | add r0, r0, r2 | 83 | add r0, r0, r2 |
| 83 | subs r1, r1, r2 | 84 | subs r1, r1, r2 |
| 84 | bhi 1b | 85 | bhi 2b |
| 85 | dsb | 86 | dsb ishst |
| 86 | mov pc, lr | 87 | mov pc, lr |
| 87 | ENDPROC(cpu_v7_dcache_clean_area) | 88 | ENDPROC(cpu_v7_dcache_clean_area) |
| 88 | 89 | ||
