summaryrefslogtreecommitdiff
path: root/Documentation/rmodules.md
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/rmodules.md')
-rw-r--r--Documentation/rmodules.md10
1 files changed, 5 insertions, 5 deletions
diff --git a/Documentation/rmodules.md b/Documentation/rmodules.md
index 520d184ddc..8a707b8a54 100644
--- a/Documentation/rmodules.md
+++ b/Documentation/rmodules.md
@@ -15,9 +15,9 @@ done by fixing up all relocation entries in the relocatable module
based on the location of the binary (which was returned by CBMEM
at runtime).
-# Implementation Details
+## Implementation Details
-## build time
+### Build Time
At build time the rmodtool (util/cbfstool/rmodtool.c) is used to
create relocatable modules. The rmodtool basically takes an ELF
@@ -44,7 +44,7 @@ which are all created by the rmodtool.
2. program (.program)
3. relocation entries (.relocs)
-## runtime
+### Runtime
Either rmodule\_load (lib/rmodule.c) is used directly or through the
rmodule\_stage\_load (lib/rmodule.c) wrapper. It is used to load the
@@ -59,7 +59,7 @@ address pointing to a location that needs relocation. The relocation
itself is just a simple addition, that adds an offset from where the
image was "supposed" to be at link time, to where it is now relocated.
-## module\_parameters
+### module\_parameters
module\_parameters is a section inside the rmodule ELF file. Its
basically a way to pass runtime information to an rmodule
@@ -73,7 +73,7 @@ volatile __attribute((aligned(4), __section__(".module_parameters")))
struct smm_runtime smm_runtime;
```
-# x86 why rmodules
+## x86 why rmodules
//TODO
x86: postcar and ramstage cannot conflict with payload regarding
memory placement. Therefore payload location is usually fixed and