summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAaron Durbin <adurbin@chromium.org>2016-03-17 23:13:34 -0500
committerAaron Durbin <adurbin@chromium.org>2016-03-22 13:54:52 +0100
commit94271b428e95d3709352b455b9e6443ff769ec49 (patch)
treee286bc2b462ae1a3b79d01349a9b332e8fa02572 /src
parentf51b12735d822289942d8958707f400bc9634d00 (diff)
lib/rmodule: export parameters in struct rmod_stage_load
In order for a caller to utilize an rmodule's parameters section after calling rmodule_stage_load() export the rmodule's parameter pointer in struct rmod_stage_load. Change-Id: I9cd51652cf8cdb3fae773256989851638aa1a60f Signed-off-by: Aaron Durbin <adurbin@chromium.org> Reviewed-on: https://review.coreboot.org/14139 Tested-by: build bot (Jenkins) Reviewed-by: Furquan Shaikh <furquan@google.com> Reviewed-by: Andrey Petrov <andrey.petrov@intel.com>
Diffstat (limited to 'src')
-rw-r--r--src/include/rmodule.h1
-rw-r--r--src/lib/rmodule.c3
2 files changed, 4 insertions, 0 deletions
diff --git a/src/include/rmodule.h b/src/include/rmodule.h
index a2612d1110..c0c062cf80 100644
--- a/src/include/rmodule.h
+++ b/src/include/rmodule.h
@@ -55,6 +55,7 @@ struct prog;
struct rmod_stage_load {
uint32_t cbmem_id;
struct prog *prog;
+ void *params;
};
/* Both of the following functions return 0 on success, -1 on error. */
diff --git a/src/lib/rmodule.c b/src/lib/rmodule.c
index 585fb5f2ef..9825e6a50f 100644
--- a/src/lib/rmodule.c
+++ b/src/lib/rmodule.c
@@ -296,5 +296,8 @@ int rmodule_stage_load(struct rmod_stage_load *rsl)
rmodule_memory_size(&rmod_stage));
prog_set_entry(rsl->prog, rmodule_entry(&rmod_stage), NULL);
+ /* Allow caller to pick up parameters, if available. */
+ rsl->params = rmodule_parameters(&rmod_stage);
+
return 0;
}