diff options
Diffstat (limited to 'arch/arm/mm/proc-arm920.S')
-rw-r--r-- | arch/arm/mm/proc-arm920.S | 21 |
1 files changed, 8 insertions, 13 deletions
diff --git a/arch/arm/mm/proc-arm920.S b/arch/arm/mm/proc-arm920.S index 2e6849b41f66..88fb3d9e0640 100644 --- a/arch/arm/mm/proc-arm920.S +++ b/arch/arm/mm/proc-arm920.S | |||
@@ -379,31 +379,26 @@ ENTRY(cpu_arm920_set_pte_ext) | |||
379 | 379 | ||
380 | /* Suspend/resume support: taken from arch/arm/plat-s3c24xx/sleep.S */ | 380 | /* Suspend/resume support: taken from arch/arm/plat-s3c24xx/sleep.S */ |
381 | .globl cpu_arm920_suspend_size | 381 | .globl cpu_arm920_suspend_size |
382 | .equ cpu_arm920_suspend_size, 4 * 4 | 382 | .equ cpu_arm920_suspend_size, 4 * 3 |
383 | #ifdef CONFIG_PM_SLEEP | 383 | #ifdef CONFIG_PM_SLEEP |
384 | ENTRY(cpu_arm920_do_suspend) | 384 | ENTRY(cpu_arm920_do_suspend) |
385 | stmfd sp!, {r4 - r7, lr} | 385 | stmfd sp!, {r4 - r6, lr} |
386 | mrc p15, 0, r4, c13, c0, 0 @ PID | 386 | mrc p15, 0, r4, c13, c0, 0 @ PID |
387 | mrc p15, 0, r5, c3, c0, 0 @ Domain ID | 387 | mrc p15, 0, r5, c3, c0, 0 @ Domain ID |
388 | mrc p15, 0, r6, c2, c0, 0 @ TTB address | 388 | mrc p15, 0, r6, c1, c0, 0 @ Control register |
389 | mrc p15, 0, r7, c1, c0, 0 @ Control register | 389 | stmia r0, {r4 - r6} |
390 | stmia r0, {r4 - r7} | 390 | ldmfd sp!, {r4 - r6, pc} |
391 | ldmfd sp!, {r4 - r7, pc} | ||
392 | ENDPROC(cpu_arm920_do_suspend) | 391 | ENDPROC(cpu_arm920_do_suspend) |
393 | 392 | ||
394 | ENTRY(cpu_arm920_do_resume) | 393 | ENTRY(cpu_arm920_do_resume) |
395 | mov ip, #0 | 394 | mov ip, #0 |
396 | mcr p15, 0, ip, c8, c7, 0 @ invalidate I+D TLBs | 395 | mcr p15, 0, ip, c8, c7, 0 @ invalidate I+D TLBs |
397 | mcr p15, 0, ip, c7, c7, 0 @ invalidate I+D caches | 396 | mcr p15, 0, ip, c7, c7, 0 @ invalidate I+D caches |
398 | ldmia r0, {r4 - r7} | 397 | ldmia r0, {r4 - r6} |
399 | mcr p15, 0, r4, c13, c0, 0 @ PID | 398 | mcr p15, 0, r4, c13, c0, 0 @ PID |
400 | mcr p15, 0, r5, c3, c0, 0 @ Domain ID | 399 | mcr p15, 0, r5, c3, c0, 0 @ Domain ID |
401 | mcr p15, 0, r6, c2, c0, 0 @ TTB address | 400 | mcr p15, 0, r1, c2, c0, 0 @ TTB address |
402 | mov r0, r7 @ control register | 401 | mov r0, r6 @ control register |
403 | mov r2, r6, lsr #14 @ get TTB0 base | ||
404 | mov r2, r2, lsl #14 | ||
405 | ldr r3, =PMD_TYPE_SECT | PMD_SECT_BUFFERABLE | \ | ||
406 | PMD_SECT_CACHEABLE | PMD_BIT4 | PMD_SECT_AP_WRITE | ||
407 | b cpu_resume_mmu | 402 | b cpu_resume_mmu |
408 | ENDPROC(cpu_arm920_do_resume) | 403 | ENDPROC(cpu_arm920_do_resume) |
409 | #endif | 404 | #endif |