romstage_handoff: add helper to determine resume status

Instead of having callers query the romstage handoff resume
status by inspecting the object themselves add
romstage_handoff_is_resume() so that the same information
can be queried easily.

Change-Id: I40f3769b7646bf296ee4bc323a9ab1d5e5691e21
Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/17647
Tested-by: build bot (Jenkins)
Reviewed-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-by: Furquan Shaikh <furquan@google.com>
diff --git a/src/lib/prog_loaders.c b/src/lib/prog_loaders.c
index 3a6f2e2..58c1a8a 100644
--- a/src/lib/prog_loaders.c
+++ b/src/lib/prog_loaders.c
@@ -85,19 +85,19 @@
 	}
 }
 
-static void run_ramstage_from_resume(struct romstage_handoff *handoff,
-					struct prog *ramstage)
+static void run_ramstage_from_resume(struct prog *ramstage)
 {
-	if (handoff != NULL && handoff->s3_resume) {
-		/* Load the cached ramstage to runtime location. */
-		stage_cache_load_stage(STAGE_RAMSTAGE, ramstage);
+	if (!romstage_handoff_is_resume())
+		return;
 
-		if (prog_entry(ramstage) != NULL) {
-			printk(BIOS_DEBUG, "Jumping to image.\n");
-			prog_run(ramstage);
-		}
-		ramstage_cache_invalid();
+	/* Load the cached ramstage to runtime location. */
+	stage_cache_load_stage(STAGE_RAMSTAGE, ramstage);
+
+	if (prog_entry(ramstage) != NULL) {
+		printk(BIOS_DEBUG, "Jumping to image.\n");
+		prog_run(ramstage);
 	}
+	ramstage_cache_invalid();
 }
 
 static int load_relocatable_ramstage(struct prog *ramstage)
@@ -136,8 +136,7 @@
 	if (IS_ENABLED(CONFIG_ARCH_X86) &&
 	    !IS_ENABLED(CONFIG_NO_STAGE_CACHE) &&
 	    IS_ENABLED(CONFIG_EARLY_CBMEM_INIT))
-		run_ramstage_from_resume(romstage_handoff_find_or_add(),
-						&ramstage);
+		run_ramstage_from_resume(&ramstage);
 
 	if (prog_locate(&ramstage))
 		goto fail;