Proc vcore list only has available vcores
[akaros.git] / kern / src / init.c
index b58d899..1a76999 100644 (file)
 #include <kthread.h>
 #include <console.h>
 #include <linker_func.h>
+#include <ip.h>
+#include <acpi.h>
+#include <coreboot_tables.h>
 
 // zra: flag for Ivy
 int booting = 1;
-
+struct sysinfo_t sysinfo;
 static void run_linker_funcs(void);
 
 void kernel_init(multiboot_info_t *mboot_info)
@@ -72,6 +75,7 @@ void kernel_init(multiboot_info_t *mboot_info)
        radix_init();
        cache_color_alloc_init();       // Inits data structs
        colored_page_alloc_init();      // Allocates colors for agnostic processes
+       acpiinit();
        kthread_init();                                 /* might need to tweak when this happens */
        vmr_init();
        file_init();
@@ -86,17 +90,9 @@ void kernel_init(multiboot_info_t *mboot_info)
        arch_init();
        block_init();
        enable_irq();
-       void ether8139link(void);
-       ether8139link();
        run_linker_funcs();
-/*
-       void ether8169link(void);
-       ether8169link();
-       void etherigbelink(void);
-       etherigbelink();
-*/
-       ethermediumlink();
-       loopbackmediumlink();
+       /* reset/init devtab after linker funcs 3 and 4.  these run NIC and medium
+        * pre-inits, which need to happen before devether. */
        devtabreset();
        devtabinit();
 
@@ -106,7 +102,7 @@ void kernel_init(multiboot_info_t *mboot_info)
 #ifdef CONFIG_ETH_AUDIO
        eth_audio_init();
 #endif /* CONFIG_ETH_AUDIO */
-
+       get_coreboot_info(&sysinfo);
        // zra: let's Ivy know we're done booting
        booting = 0;