Changeset 3ee38a9 in mainline
- Timestamp:
- 2013-06-07T19:22:02Z (12 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- e006ba5
- Parents:
- 74dcc07
- Location:
- kernel/arch/arm32/include/arch
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/arm32/include/arch/asm.h
r74dcc07 r3ee38a9 38 38 39 39 #include <typedefs.h> 40 #include <arch/cp15.h> 40 41 #include <arch/stack.h> 41 42 #include <config.h> … … 51 52 * chapter 2.3.8 p.2-22 (52 in the PDF) 52 53 * 53 * @note Although mcr p15, 0, R0, c7, c0, 4 is defined in ARM Architecture54 * reference manual for armv4/5 CP15 implementation is mandatory only for55 * armv6+.54 * @note Although CP15WFI (mcr p15, 0, R0, c7, c0, 4) is defined in ARM 55 * Architecture reference manual for armv4/5, CP15 implementation is mandatory 56 * only for armv6+. 56 57 */ 57 58 NO_TRACE static inline void cpu_sleep(void) … … 60 61 asm volatile ( "wfe" ); 61 62 #elif defined(PROCESSOR_ARCH_armv6) | defined(PROCESSOR_arm926ej_s) | defined(PROCESSOR_arm920t) 62 asm volatile ( "mcr p15, 0, R0, c7, c0, 4");63 WFI_write(0); 63 64 #endif 64 65 } -
kernel/arch/arm32/include/arch/mm/page_armv4.h
r74dcc07 r3ee38a9 41 41 #error "Do not include arch specific page.h directly use generic page.h instead" 42 42 #endif 43 44 #include <arch/cp15.h> 43 45 44 46 /* Macros for querying the last-level PTE entries. */ … … 128 130 NO_TRACE static inline void set_ptl0_addr(pte_t *pt) 129 131 { 130 asm volatile ( 131 "mcr p15, 0, %[pt], c2, c0, 0\n" 132 :: [pt] "r" (pt) 133 ); 132 TTBR0_write((uint32_t)pt); 134 133 } 135 134 -
kernel/arch/arm32/include/arch/mm/page_armv6.h
r74dcc07 r3ee38a9 40 40 #error "Do not include arch specific page.h directly use generic page.h instead" 41 41 #endif 42 43 #include <arch/cp15.h> 42 44 43 45 /* Macros for querying the last-level PTE entries. */ … … 132 134 NO_TRACE static inline void set_ptl0_addr(pte_t *pt) 133 135 { 134 asm volatile ( 135 "mcr p15, 0, %[pt], c2, c0, 0\n" 136 :: [pt] "r" (pt) 137 ); 136 TTBR0_write((uint32_t)pt); 138 137 } 139 138
Note:
See TracChangeset
for help on using the changeset viewer.