git.ucc.asn.au
/
tpg
/
acess2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Kernel/x86 - Fix forgetting to reference pointer in TMPCR3 switch
[tpg/acess2.git]
/
KernelLand
/
Kernel
/
arch
/
armv7
/
start.S
diff --git
a/KernelLand/Kernel/arch/armv7/start.S
b/KernelLand/Kernel/arch/armv7/start.S
index
8193b31
..
1fe0fd8
100644
(file)
--- a/
KernelLand/Kernel/arch/armv7/start.S
+++ b/
KernelLand/Kernel/arch/armv7/start.S
@@
-16,8
+16,17
@@
ivt_unused: b . @ 0x14 Not Used
ivt_irq: b IRQHandler @ 0x18 IRQ
ivt_fiq: b . @ 0x1C FIQ (Fast interrupt)
ivt_irq: b IRQHandler @ 0x18 IRQ
ivt_fiq: b . @ 0x1C FIQ (Fast interrupt)
+init_lock: .long 0
+
+.extern SHORTLOCK
.globl _start
_start:
.globl _start
_start:
+ ldr r1, =init_lock
+ mov r0, #1
+ swp r0, r0, [r1]
+ tst r0,r0
+ bne .smp_halt
+
ldr r2, =UART0_PADDR
mov r1, #'A'
str r1, [r2]
ldr r2, =UART0_PADDR
mov r1, #'A'
str r1, [r2]
@@
-116,6
+125,8
@@
_start:
ldr r0, =kmain
mov pc, r0
1: b 1b @ Infinite loop
ldr r0, =kmain
mov pc, r0
1: b 1b @ Infinite loop
+.smp_halt:
+1: b 1b
.comm irqstack, 0x1000 @ ; 4KiB Stack
.comm abortstack, 0x1000 @ ; 4KiB Stack
.comm irqstack, 0x1000 @ ; 4KiB Stack
.comm abortstack, 0x1000 @ ; 4KiB Stack
UCC
git Repository :: git.ucc.asn.au