Loading arch/arm/kernel/head-common.S +15 −11 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ * and hope for the best (useful if bootloader fails to pass a proper * machine ID for example). */ __HEAD __error_a: #ifdef CONFIG_DEBUG_LL mov r4, r1 @ preserve machine ID Loading @@ -33,7 +34,7 @@ __error_a: bl printhex8 adr r0, str_a2 bl printascii adr r3, 4f adr r3, __lookup_machine_type_data ldmia r3, {r4, r5, r6} @ get machine desc list sub r4, r3, r4 @ get offset between virt&phys add r5, r5, r4 @ convert virt addresses to Loading Loading @@ -61,15 +62,6 @@ str_a3: .asciz "\nPlease check your kernel config and/or bootloader.\n" .align #endif /* * Look in <asm/procinfo.h> and arch/arm/kernel/arch.[ch] for * more information about the __proc_info and __arch_info structures. */ .align 2 4: .long . .long __arch_info_begin .long __arch_info_end /* * Lookup machine architecture in the linker-build list of architectures. * Note that we can't use the absolute addresses for the __arch_info Loading @@ -82,7 +74,7 @@ str_a3: .asciz "\nPlease check your kernel config and/or bootloader.\n" * r5 = mach_info pointer in physical address space */ __lookup_machine_type: adr r3, 4b adr r3, __lookup_machine_type_data ldmia r3, {r4, r5, r6} sub r3, r3, r4 @ get offset between virt&phys add r5, r5, r3 @ convert virt addresses to Loading @@ -97,6 +89,18 @@ __lookup_machine_type: 2: mov pc, lr ENDPROC(__lookup_machine_type) /* * Look in arch/arm/kernel/arch.[ch] for information about the * __arch_info structures. */ .align 2 .type __lookup_machine_type_data, %object __lookup_machine_type_data: .long . .long __arch_info_begin .long __arch_info_end .size __lookup_machine_type_data, . - __lookup_machine_type_data /* Determine validity of the r2 atags pointer. The heuristic requires * that the pointer be aligned, in the first 16k of physical RAM and * that the ATAG_CORE marker is first and present. Future revisions Loading Loading
arch/arm/kernel/head-common.S +15 −11 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ * and hope for the best (useful if bootloader fails to pass a proper * machine ID for example). */ __HEAD __error_a: #ifdef CONFIG_DEBUG_LL mov r4, r1 @ preserve machine ID Loading @@ -33,7 +34,7 @@ __error_a: bl printhex8 adr r0, str_a2 bl printascii adr r3, 4f adr r3, __lookup_machine_type_data ldmia r3, {r4, r5, r6} @ get machine desc list sub r4, r3, r4 @ get offset between virt&phys add r5, r5, r4 @ convert virt addresses to Loading Loading @@ -61,15 +62,6 @@ str_a3: .asciz "\nPlease check your kernel config and/or bootloader.\n" .align #endif /* * Look in <asm/procinfo.h> and arch/arm/kernel/arch.[ch] for * more information about the __proc_info and __arch_info structures. */ .align 2 4: .long . .long __arch_info_begin .long __arch_info_end /* * Lookup machine architecture in the linker-build list of architectures. * Note that we can't use the absolute addresses for the __arch_info Loading @@ -82,7 +74,7 @@ str_a3: .asciz "\nPlease check your kernel config and/or bootloader.\n" * r5 = mach_info pointer in physical address space */ __lookup_machine_type: adr r3, 4b adr r3, __lookup_machine_type_data ldmia r3, {r4, r5, r6} sub r3, r3, r4 @ get offset between virt&phys add r5, r5, r3 @ convert virt addresses to Loading @@ -97,6 +89,18 @@ __lookup_machine_type: 2: mov pc, lr ENDPROC(__lookup_machine_type) /* * Look in arch/arm/kernel/arch.[ch] for information about the * __arch_info structures. */ .align 2 .type __lookup_machine_type_data, %object __lookup_machine_type_data: .long . .long __arch_info_begin .long __arch_info_end .size __lookup_machine_type_data, . - __lookup_machine_type_data /* Determine validity of the r2 atags pointer. The heuristic requires * that the pointer be aligned, in the first 16k of physical RAM and * that the ATAG_CORE marker is first and present. Future revisions Loading