stage_cache: Add rmodule params in metadata

The change allows to update rmodule parameters after
it has been loaded from stage cache.

Change-Id: Ib825ffe245d447ad3a8246f7dbd52c6e34103a0c
Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/21385
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
diff --git a/src/lib/cbmem_stage_cache.c b/src/lib/cbmem_stage_cache.c
index 3fc99db..2947972 100644
--- a/src/lib/cbmem_stage_cache.c
+++ b/src/lib/cbmem_stage_cache.c
@@ -29,6 +29,7 @@
 		return;
 	meta->load_addr = (uintptr_t)prog_start(stage);
 	meta->entry_addr = (uintptr_t)prog_entry(stage);
+	meta->arg = (uintptr_t)prog_entry_arg(stage);
 
 	c = cbmem_add(CBMEM_ID_STAGEx_CACHE + stage_id, prog_size(stage));
 	if (c == NULL)
@@ -63,5 +64,6 @@
 	memcpy(load_addr, c, size);
 
 	prog_set_area(stage, load_addr, size);
-	prog_set_entry(stage, (void *)(uintptr_t)meta->entry_addr, NULL);
+	prog_set_entry(stage, (void *)(uintptr_t)meta->entry_addr,
+			(void *)(uintptr_t)meta->arg);
 }