Move the CBFS payload setup to later in the boot.

Don't try to register payloads until after malloc has been setup.
diff --git a/src/coreboot.c b/src/coreboot.c
index c9ee082..f627531 100644
--- a/src/coreboot.c
+++ b/src/coreboot.c
@@ -595,8 +595,8 @@
 }
 
 // Register payloads in "img/" directory with boot system.
-static void
-register_cbfs_payload(void)
+void
+cbfs_payload_setup(void)
 {
     struct cbfs_file *file = NULL;
     for (;;) {
@@ -614,5 +614,4 @@
 {
     coreboot_fill_map();
     cbfs_setup();
-    register_cbfs_payload();
 }
diff --git a/src/post.c b/src/post.c
index ff6813c..efcfc85 100644
--- a/src/post.c
+++ b/src/post.c
@@ -180,6 +180,7 @@
     floppy_setup();
     ata_setup();
     ahci_setup();
+    cbfs_payload_setup();
     ramdisk_setup();
     virtio_blk_setup();
 }
diff --git a/src/util.h b/src/util.h
index 17fc54a..2160b37 100644
--- a/src/util.h
+++ b/src/util.h
@@ -402,6 +402,7 @@
 int cbfs_copyfile(struct cbfs_file *file, void *dst, u32 maxlen);
 void cbfs_run_payload(struct cbfs_file *file);
 void coreboot_copy_biostable(void);
+void cbfs_payload_setup(void);
 void coreboot_setup(void);
 
 // vgahooks.c