Changeset 6ff23ff in mainline for kernel/arch/arm32/include/arch/barrier.h
- Timestamp:
- 2018-05-17T13:46:56Z (6 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 4f8772d4
- Parents:
- 7c3fb9b
- git-author:
- Jiri Svoboda <jiri@…> (2018-05-16 18:44:36)
- git-committer:
- Jiri Svoboda <jiri@…> (2018-05-17 13:46:56)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/arm32/include/arch/barrier.h
r7c3fb9b r6ff23ff 49 49 50 50 #if defined PROCESSOR_ARCH_armv7_a 51 /* ARMv7 uses instructions for memory barriers see ARM Architecture reference 51 /* 52 * ARMv7 uses instructions for memory barriers see ARM Architecture reference 52 53 * manual for details: 53 54 * DMB: ch. A8.8.43 page A8-376 … … 69 70 * ARM Architecture Reference Manual version I ch. B.3.2.1 p. B3-4 70 71 */ 71 /* ARMv6- use system control coprocessor (CP15) for memory barrier instructions. 72 /* 73 * ARMv6- use system control coprocessor (CP15) for memory barrier instructions. 72 74 * Although at least mcr p15, 0, r0, c7, c10, 4 is mentioned in earlier archs, 73 75 * CP15 implementation is mandatory only for armv6+. … … 86 88 #endif 87 89 #else 88 /* Older manuals mention syscalls as a way to implement cache coherency and 90 /* 91 * Older manuals mention syscalls as a way to implement cache coherency and 89 92 * barriers. See for example ARM Architecture Reference Manual Version D 90 93 * chapter 2.7.4 Prefetching and self-modifying code (p. A2-28) … … 123 126 inst_barrier(); /* Wait for Inst refetch */\ 124 127 } while (0) 125 /* @note: Cache type register is not available in uspace. We would need 126 * to export the cache line value, or use syscall for uspace smc_coherence */ 128 /* 129 * @note: Cache type register is not available in uspace. We would need 130 * to export the cache line value, or use syscall for uspace smc_coherence 131 */ 127 132 #define smc_coherence_block(a, l) \ 128 133 do { \
Note:
See TracChangeset
for help on using the changeset viewer.