Move boot-up assembly to usr/drivers.
authorGerd Zellweger <mail@gerdzellweger.com>
Mon, 10 Nov 2014 10:16:16 +0000 (11:16 +0100)
committerGerd Zellweger <mail@gerdzellweger.com>
Mon, 10 Nov 2014 10:16:16 +0000 (11:16 +0100)
kernel/Hakefile
kernel/arch/x86_32/init.c
kernel/arch/x86_64/init.c
kernel/arch/x86_64/syscall.c

index a0005a8..ac1192a 100644 (file)
@@ -92,7 +92,9 @@ let
   cpuDriver {
      architectures = [ "x86_64" ],
      assemblyFiles = [ "arch/x86_64/boot.S",
-                       "arch/x86_64/entry.S" ],
+                       "arch/x86_64/entry.S",
+                       "../usr/drivers/cpuboot/init_ap_x86_64.S",
+                       "../usr/drivers/cpuboot/init_ap_x86_32.S" ],
      cFiles = [ "arch/x86_64/debug.c",
                 "arch/x86_64/gdb_arch.c",
                 "arch/x86_64/init.c",
@@ -189,7 +191,8 @@ let
      architectures = [ "x86_32" ],
      assemblyFiles = [ "arch/x86_32/boot.S",
                        "arch/x86_32/entry.S",
-                       "arch/x86_32/pic.S" ],
+                       "arch/x86_32/pic.S",
+                       "../usr/drivers/cpuboot/init_ap_x86_32.S" ],
      cFiles = [ "arch/x86_32/debug.c",
                 "arch/x86_32/gdb_arch.c",
                 "arch/x86_32/init.c",
index 33925df..bad4df9 100644 (file)
@@ -632,9 +632,6 @@ static void  __attribute__ ((noreturn, noinline)) text_init(void)
     enable_monitor_mwait();
 #endif
 
-    /* Register start handler for other cores in the system */
-    coreboot_set_spawn_handler(CPU_X86_32, start_aps_x86_32_start);
-
     // Call main kernel startup function -- this should never return
     kernel_startup();
 
index 051ea11..8cc7f4f 100644 (file)
@@ -534,9 +534,6 @@ static void  __attribute__ ((noreturn, noinline)) text_init(void)
     // Check/Enable MONITOR/MWAIT opcodes
     enable_monitor_mwait();
 
-    // Register start handler for other cores in the system
-    coreboot_set_spawn_handler(CPU_X86_64, start_aps_x86_64_start);
-
     // Call main kernel startup function -- this should never return
     kernel_startup();
 
index c58d524..30146ac 100644 (file)
@@ -933,7 +933,6 @@ static invocation_handler_t invocations[ObjType_Num][CAP_MAX_CMD] = {
         [VNodeCmd_Unmap] = handle_unmap,
     },
     [ObjType_Kernel] = {
-        [KernelCmd_Stop_core]    = monitor_stop_core,
         [KernelCmd_Spawn_core]   = monitor_spawn_core,
         [KernelCmd_Get_core_id]  = monitor_get_core_id,
         [KernelCmd_Get_arch_id]  = monitor_get_arch_id,