diff options
Diffstat (limited to 'kernel/kernel.c')
| -rw-r--r-- | kernel/kernel.c | 36 |
1 files changed, 18 insertions, 18 deletions
diff --git a/kernel/kernel.c b/kernel/kernel.c index 5f6981b..e5369f4 100644 --- a/kernel/kernel.c +++ b/kernel/kernel.c @@ -14,6 +14,7 @@ #include "timer.h" #include "mem.h" #include "vmem.h" +#include "mp.h" #include "interrupts.h" #include "multiboot.h" @@ -69,6 +70,23 @@ void kernel_main(uint32_t eax,uint32_t ebx) // uint32_t kernel_blocks=mem_init(info); + // + // Gather Info about other processors. (APs = application processors) + // ACPI or MP + // + smp_processors procdata; + + if(!acpi_find(&procdata)) + if(!mp_find(&procdata)) + panic(FOOLOS_MODULE_NAME,"ACPI and MP search failed! I do not want to continue!"); + // + // Start the other Processors (before paging) + // + smp_log_procdata(&procdata); + //TODO: !!! Check commented out sleep ()!!! + //smp_start_aps(&procdata,0x80000); // starts at 0x80000 + // but it will be copied over mbr + while(1); // // Activate Virtual Memory (paging) @@ -91,24 +109,6 @@ void kernel_main(uint32_t eax,uint32_t ebx) //pci_init(); - // - // Gather Info about other processors. (APs) - // ACPI or MP - // - // - /* - smp_processors procdata; - - if(!acpi_find(&procdata)) - if(!mp_find(&procdata)) - panic(FOOLOS_MODULE_NAME,"ACPI and MP search failed! I do not want to continue!"); - */ - // - // Start the other Processors (also before paging for some reason!) - // - //smp_log_procdata(&procdata); - //smp_start_aps(&procdata,0x80000); // starts at 0x80000 - // but it will be copied over mbr // // Mount Root EXT2 ramimage |
