Changes in kernel/arch/arm64/src/asm.S [28a5ebd:ebb3538] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/arm64/src/asm.S
r28a5ebd rebb3538 56 56 FUNCTION_END(memcpy_to_uspace_failover_address) 57 57 58 FUNCTION_BEGIN(early_putuchar) 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 59 93 ret 60 FUNCTION_END( early_putuchar)94 FUNCTION_END(smc_coherence) 61 95 62 96 /* Static checks for the istate_t save/load. */
Note:
See TracChangeset
for help on using the changeset viewer.