Breakup rombios32.c into pciinit.c and smbios.c
diff --git a/src/post.c b/src/post.c
index b41e77f..e1ec630 100644
--- a/src/post.c
+++ b/src/post.c
@@ -16,6 +16,8 @@
#include "disk.h" // floppy_drive_setup
#include "memmap.h" // add_e820
#include "pic.h" // pic_setup
+#include "pci.h" // create_pirtable
+#include "acpi.h" // acpi_bios_init
#define bda ((struct bios_data_area_s *)MAKE_FARPTR(SEG_BDA, 0))
#define ebda ((struct extended_bios_data_area_s *)MAKE_FARPTR(SEG_EBDA, 0))
@@ -120,6 +122,24 @@
}
static void
+init_bios_tables(void)
+{
+ if (CONFIG_COREBOOT)
+ // XXX - not supported on coreboot yet.
+ return;
+
+ smm_init();
+
+ create_pirtable();
+
+ mptable_init();
+
+ smbios_init();
+
+ acpi_bios_init();
+}
+
+static void
init_boot_vectors()
{
dprintf(3, "init boot device ordering\n");
@@ -247,7 +267,9 @@
printf("BIOS - begin\n\n");
- rombios32_init();
+ pci_bios_setup();
+
+ init_bios_tables();
memmap_finalize();