Changes in kernel/arch/arm64/src/asm.S [ebb3538:28a5ebd] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/arm64/src/asm.S
rebb3538 r28a5ebd 56 56 FUNCTION_END(memcpy_to_uspace_failover_address) 57 57 58 /** Flush instruction caches 59 * 60 * @param x0 Starting address of the flushing. 61 * @param x1 Number of bytes to flush. 62 * 63 */ 64 FUNCTION_BEGIN(smc_coherence) 65 /* Initialize loop */ 66 mov x9, x0 67 mov x10, xzr 68 69 __dc_loop: 70 /* Data or Unified Cache Line Clean */ 71 dc cvau, x9 72 add x9, x9, #4 73 add x10, x10, #4 74 cmp x10, x1 75 blo __dc_loop 76 77 dsb ish 78 79 /* Initialize loop */ 80 mov x9, x0 81 mov x10, xzr 82 83 __ic_loop: 84 /* Instruction Cache Line Invalidate */ 85 ic ivau, x9 86 add x9, x9, #4 87 add x10, x10, #4 88 cmp x10, x1 89 blo __ic_loop 90 91 dsb ish 92 isb 58 FUNCTION_BEGIN(early_putuchar) 93 59 ret 94 FUNCTION_END( smc_coherence)60 FUNCTION_END(early_putuchar) 95 61 96 62 /* Static checks for the istate_t save/load. */
Note:
See TracChangeset
for help on using the changeset viewer.