summaryrefslogtreecommitdiff
path: root/kernel/kernel.c
diff options
context:
space:
mode:
authorMiguel <m.i@gmx.at>2018-09-07 03:01:28 +0200
committerMiguel <m.i@gmx.at>2018-09-07 03:01:28 +0200
commitaa4b4c6c1918a51318709761873d1c5e248a831d (patch)
treebdcfe7be159cc778d113538722e119a665a47738 /kernel/kernel.c
parentef4943053475cd8bf341c42dd0b538bc630b92a3 (diff)
apic timer smp
Diffstat (limited to 'kernel/kernel.c')
-rw-r--r--kernel/kernel.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/kernel/kernel.c b/kernel/kernel.c
index 493fb93..30949f8 100644
--- a/kernel/kernel.c
+++ b/kernel/kernel.c
@@ -42,11 +42,6 @@ void kernel_main(uint32_t eax,uint32_t ebx)
multiboot_information *info;
info=get_multiboot(eax, ebx);
- klog("Symmetrical Multi Processing (SMP) init ... ");
- smp_processors procdata;
-// if(!acpi_find(&procdata)&&!mp_find(&procdata))kpanic("No ACPI or MP found!");
- if(!acpi_find(&procdata))("No ACPI found!");
-
klog("Memory init ... ");
uint32_t kernel_blocks=mem_init(info);
@@ -56,9 +51,13 @@ void kernel_main(uint32_t eax,uint32_t ebx)
klog("Interrupt Vector Table (IVT) init ...");
interrupts_init(0x08);
+ klog("Symmetrical Multi Processing (SMP) init ... ");
+ smp_processors procdata;
+// if(!mp_find(&procdata))kpanic("No MP found!");
+ if(!acpi_find(&procdata))kpanic("No ACPI found!");
+
// Start the other Processors (before paging because apic addr etc..?)
//TODO: remap apic !!! Check commented out sleep ()!!!
- // https://wiki.osdev.org/Symmetric_Multiprocessing
klog("Symmetric Multi Processing (SMP) start ... ");
smp_log_procdata(&procdata);
smp_start_aps(&procdata);