Changes in boot/arch/arm32/src/asm.S [73b3ecd:e93bb24] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
boot/arch/arm32/src/asm.S
r73b3ecd re93bb24 27 27 # 28 28 29 #include <abi/asmtool.h>30 29 #include <arch/arch.h> 31 30 32 31 .section BOOTSTRAP 33 32 34 SYMBOL(start) 33 .global start 34 .global boot_pt 35 .global boot_stack 36 .global halt 37 .global jump_to_kernel 38 39 start: 35 40 ldr sp, =boot_stack 36 41 b bootstrap 37 42 38 43 .section BOOTPT 39 SYMBOL(boot_pt) 44 boot_pt: 40 45 .space PTL0_ENTRIES * PTL0_ENTRY_SIZE 41 46 42 47 .section BOOTSTACK 43 48 .space 4096 44 SYMBOL(boot_stack) 49 boot_stack: 45 50 46 51 .text 47 52 48 FUNCTION_BEGIN(halt) 53 halt: 49 54 b halt 50 FUNCTION_END(halt)51 55 52 FUNCTION_BEGIN(jump_to_kernel) 56 jump_to_kernel: 53 57 # 54 58 # Make sure that the I-cache, D-cache and memory are mutually coherent … … 71 75 bic r4, r4, #(1 << CP15_C1_DC) 72 76 73 # Disable I-cache and Branch predictors.77 # Disable I-cache and Branche predictors. 74 78 bic r4, r4, #(1 << CP15_C1_IC) 75 #ifdef PROCESSOR_ARCH_armv676 79 bic r4, r4, #(1 << CP15_C1_BP) 77 #endif78 80 79 81 mcr p15, 0, r4, c1, c0, 0 80 82 #endif 83 84 81 85 82 # 86 #Wait for the operations to complete 83 87 #ifdef PROCESSOR_ARCH_armv7_a 84 88 dsb 85 89 #else 86 # 90 #cp15 dsb, r4 is ignored (should be zero) 87 91 mov r4, #0 88 92 mcr p15, 0, r4, c7, c10, 4 … … 94 98 nop 95 99 96 # 100 #Wait for the operations to complete 97 101 #ifdef PROCESSOR_ARCH_armv7_a 98 102 isb 99 103 nop 100 #el if defined(PROCESSOR_ARCH_armv6)104 #else 101 105 # cp15 isb 102 106 mcr p15, 0, r4, c7, c5, 4 … … 104 108 #endif 105 109 mov pc, r0 106 FUNCTION_END(jump_to_kernel)107
Note:
See TracChangeset
for help on using the changeset viewer.