aboutsummaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/Makefile.inc8
-rw-r--r--src/lib/loaders/load_and_run_payload.c2
-rw-r--r--src/lib/loaders/load_and_run_ramstage.c4
-rw-r--r--src/lib/loaders/load_and_run_romstage.c2
-rw-r--r--src/lib/prog_ops.c (renamed from src/lib/arch_ops.c)11
5 files changed, 19 insertions, 8 deletions
diff --git a/src/lib/Makefile.inc b/src/lib/Makefile.inc
index 67cf577a52..5f149c9cfa 100644
--- a/src/lib/Makefile.inc
+++ b/src/lib/Makefile.inc
@@ -18,7 +18,7 @@
#
subdirs-y += loaders
-bootblock-y += arch_ops.c
+bootblock-y += prog_ops.c
bootblock-y += cbfs.c cbfs_core.c
bootblock-$(CONFIG_COMMON_CBFS_SPI_WRAPPER) += cbfs_spi.c
@@ -26,7 +26,7 @@ bootblock-$(CONFIG_CONSOLE_CBMEM) += cbmem_console.c
bootblock-y += memchr.c
bootblock-y += memcmp.c
-verstage-y += arch_ops.c
+verstage-y += prog_ops.c
verstage-y += delay.c
verstage-y += cbfs.c
verstage-y += memcmp.c
@@ -35,7 +35,7 @@ verstage-$(CONFIG_COMMON_CBFS_SPI_WRAPPER) += cbfs_spi.c
verstage-y += tlcl.c
verstage-$(CONFIG_GENERIC_UDELAY) += timer.c
-romstage-y += arch_ops.c
+romstage-y += prog_ops.c
romstage-y += memchr.c
romstage-y += memcmp.c
$(foreach arch,$(ARCH_SUPPORTED),\
@@ -60,7 +60,7 @@ romstage-$(CONFIG_ARCH_ROMSTAGE_X86_32) += gcc.c
ramstage-$(CONFIG_ARCH_RAMSTAGE_X86_32) += gcc.c
endif
-ramstage-y += arch_ops.c
+ramstage-y += prog_ops.c
ramstage-y += hardwaremain.c
ramstage-y += selfboot.c
ramstage-y += coreboot_table.c
diff --git a/src/lib/loaders/load_and_run_payload.c b/src/lib/loaders/load_and_run_payload.c
index 8e745c9b3b..e3208a9feb 100644
--- a/src/lib/loaders/load_and_run_payload.c
+++ b/src/lib/loaders/load_and_run_payload.c
@@ -83,7 +83,7 @@ out:
void payload_run(void)
{
- const struct payload *payload = &global_payload;
+ struct payload *payload = &global_payload;
/* Reset to booting from this image as late as possible */
boot_successful();
diff --git a/src/lib/loaders/load_and_run_ramstage.c b/src/lib/loaders/load_and_run_ramstage.c
index 82bc1e08fd..9067a28dc6 100644
--- a/src/lib/loaders/load_and_run_ramstage.c
+++ b/src/lib/loaders/load_and_run_ramstage.c
@@ -48,7 +48,7 @@ load_ramstage(const struct ramstage_loader_ops *ops,
timestamp_add_now(TS_END_COPYRAM);
- stage_exit(prog_entry(ramstage));
+ prog_run(ramstage);
}
static void run_ramstage_from_resume(struct romstage_handoff *handoff,
@@ -60,7 +60,7 @@ static void run_ramstage_from_resume(struct romstage_handoff *handoff,
if (prog_entry(ramstage) != NULL) {
printk(BIOS_DEBUG, "Jumping to image.\n");
- stage_exit(prog_entry(ramstage));
+ prog_run(ramstage);
}
}
}
diff --git a/src/lib/loaders/load_and_run_romstage.c b/src/lib/loaders/load_and_run_romstage.c
index 3ad9176877..8467e90129 100644
--- a/src/lib/loaders/load_and_run_romstage.c
+++ b/src/lib/loaders/load_and_run_romstage.c
@@ -38,5 +38,5 @@ void run_romstage(void)
halt();
}
- stage_exit(prog_entry(&romstage));
+ prog_run(&romstage);
}
diff --git a/src/lib/arch_ops.c b/src/lib/prog_ops.c
index ac1be77c9e..755b135615 100644
--- a/src/lib/arch_ops.c
+++ b/src/lib/prog_ops.c
@@ -26,3 +26,14 @@ void __attribute__ ((weak)) arch_segment_loaded(uintptr_t start, size_t size,
{
/* do nothing */
}
+
+void prog_run(struct prog *prog)
+{
+ platform_prog_run(prog);
+ arch_prog_run(prog);
+}
+
+void __attribute__ ((weak)) platform_prog_run(struct prog *prog)
+{
+ /* do nothing */
+}