diff options
author | ian <ian@FreeBSD.org> | 2014-05-08 20:02:38 +0000 |
---|---|---|
committer | ian <ian@FreeBSD.org> | 2014-05-08 20:02:38 +0000 |
commit | eb7a23f086ce3307349bc8f64527b79e84789c0f (patch) | |
tree | 4a4b8269741696323f5529eab5b8a4593fac1e68 | |
parent | 8095e01e3e9635812d481bec6c2d39c5c75615c2 (diff) | |
download | FreeBSD-src-eb7a23f086ce3307349bc8f64527b79e84789c0f.zip FreeBSD-src-eb7a23f086ce3307349bc8f64527b79e84789c0f.tar.gz |
Consolitate all the AP core startup stuff under a single #ifdef SMP block.
Remove some other ifdefs that came in with a copy/paste that mean basically
"if this processor supports multicore stuff", because if you're starting up
an AP core... it does.
-rw-r--r-- | sys/arm/arm/locore.S | 22 |
1 files changed, 6 insertions, 16 deletions
diff --git a/sys/arm/arm/locore.S b/sys/arm/arm/locore.S index c3207e8..ad4204b 100644 --- a/sys/arm/arm/locore.S +++ b/sys/arm/arm/locore.S @@ -308,11 +308,6 @@ Lreal_start: Lend: .word _edata -#ifdef SMP -Lstartup_pagetable_secondary: - .word temp_pagetable -#endif - .Lstart: .word _edata .word _ebss @@ -320,10 +315,6 @@ Lstartup_pagetable_secondary: .Lvirt_done: .word virt_done -#if defined(SMP) -.Lmpvirt_done: - .word mpvirt_done -#endif .Lmainreturned: .asciz "main() returned" @@ -350,6 +341,11 @@ pagetable: #if defined(SMP) +.Lmpvirt_done: + .word mpvirt_done +Lstartup_pagetable_secondary: + .word temp_pagetable + ASENTRY_NP(mpentry) /* Make sure interrupts are disabled. */ @@ -379,26 +375,20 @@ Ltag: bic r0, r0, #0xf0000000 orr r0, r0, #PHYSADDR ldr r0, [r0] -#if defined(SMP) orr r0, r0, #2 /* Set TTB shared memory flag */ -#endif mcr p15, 0, r0, c2, c0, 0 /* Set TTB */ mcr p15, 0, r0, c8, c7, 0 /* Flush TLB */ -#if defined(CPU_ARM1136) || defined(CPU_ARM1176) || defined(CPU_MV_PJ4B) || defined(CPU_CORTEXA) || defined(CPU_KRAIT) mov r0, #0 mcr p15, 0, r0, c13, c0, 1 /* Set ASID to 0 */ -#endif /* Set the Domain Access register. Very important! */ mov r0, #((DOMAIN_CLIENT << (PMAP_DOMAIN_KERNEL*2)) | DOMAIN_CLIENT) mcr p15, 0, r0, c3, c0, 0 /* Enable MMU */ mrc p15, 0, r0, c1, c0, 0 -#if defined(CPU_ARM1136) || defined(CPU_ARM1176) || defined(CPU_MV_PJ4B) || defined(CPU_CORTEXA) || defined(CPU_KRAIT) orr r0, r0, #CPU_CONTROL_V6_EXTPAGE orr r0, r0, #CPU_CONTROL_AF_ENABLE -#endif orr r0, r0, #(CPU_CONTROL_MMU_ENABLE | CPU_CONTROL_DC_ENABLE) mcr p15, 0, r0, c1, c0, 0 nop @@ -426,7 +416,7 @@ mpvirt_done: /* NOTREACHED */ .Lmpreturned: - .asciz "main() returned" + .asciz "init_secondary() returned" .align 0 END(mpentry) #endif |