summaryrefslogtreecommitdiff
path: root/asm/mp.asm
diff options
context:
space:
mode:
Diffstat (limited to 'asm/mp.asm')
-rw-r--r--asm/mp.asm23
1 files changed, 14 insertions, 9 deletions
diff --git a/asm/mp.asm b/asm/mp.asm
index e5cc26d..f0eb9c0 100644
--- a/asm/mp.asm
+++ b/asm/mp.asm
@@ -1,7 +1,8 @@
-global smp_go
+global smp_start
+extern smp_main
; master boot record for application processors
;[org 0x7000]
-smp_go:
+smp_start:
[bits 16]
cli ;switch off interrupts!
@@ -34,15 +35,19 @@ init_pm:
call boot_32_pm ;continue booting in 32-bit protected mode
boot_32_pm:
-
- mov eax, 1 ; semaphore
- xchg eax, [LLOCK]
- cmp eax,1
hlt
- je $
- jmp $ ; loop forever here
+ jmp boot_32_pm
+
+ ;mov eax, 1 ; semaphore
+ ;xchg eax, [LLOCK]
+ ;cmp eax,1
+ ;hlt
+ ;je $
+ ;jmp $ ; loop forever here
+
+ ;call [0x8010] ;kernel_ap ;jump into our Kernel!
+ call smp_main
- call [0x8010] ;kernel_ap ;jump into our Kernel!
jmp $ ; should never be reached