aboutsummaryrefslogtreecommitdiffstats
path: root/docs
diff options
context:
space:
mode:
authorJohn Tsichritzis <john.tsichritzis@arm.com>2019-03-08 16:54:13 +0000
committerJohn Tsichritzis <john.tsichritzis@arm.com>2019-03-21 10:51:07 +0000
commitae2e01b8760618c374a605dbe4898945595cb136 (patch)
tree96a8a1a2aafbb2ba5fe72112abc16063427cc2fb /docs
parent859cf9ea33e24cc16d29dba69c0f31cbb0339283 (diff)
downloadplatform_external_arm-trusted-firmware-ae2e01b8760618c374a605dbe4898945595cb136.tar.gz
platform_external_arm-trusted-firmware-ae2e01b8760618c374a605dbe4898945595cb136.tar.bz2
platform_external_arm-trusted-firmware-ae2e01b8760618c374a605dbe4898945595cb136.zip
ROMLIB bug fixes
Fixed the below bugs: 1) Bug related to build flag V=1: if the flag was V=0, building with ROMLIB would fail. 2) Due to a syntax bug in genwrappers.sh, index file entries marked as "patch" or "reserved" were ignored. 3) Added a prepending hash to constants that genwrappers is generating. 4) Due to broken dependencies, currently the inclusion functionality is intentionally not utilised. This is why the contents of romlib/jmptbl.i have been copied to platform specific jmptbl.i files. As a result of the broken dependencies, when changing the index files, e.g. patching functions, a clean build is always required. This is a known issue that will be fixed in the future. Change-Id: I9d92aa9724e86d8f90fcd3e9f66a27aa3cab7aaa Signed-off-by: John Tsichritzis <john.tsichritzis@arm.com>
Diffstat (limited to 'docs')
-rw-r--r--docs/romlib-design.rst16
1 files changed, 12 insertions, 4 deletions
diff --git a/docs/romlib-design.rst b/docs/romlib-design.rst
index 34a7980be..41957214d 100644
--- a/docs/romlib-design.rst
+++ b/docs/romlib-design.rst
@@ -85,12 +85,12 @@ ROM" to work:
1. ``gentbl.sh`` - Generates the jump table by parsing the index file.
2. ``genvar.sh`` - Generates the jump table global variable (**not** the jump
-table itself) with the absolute address in ROM. This global variable is,
-basically, a pointer to the jump table.
+ table itself) with the absolute address in ROM. This global variable is,
+ basically, a pointer to the jump table.
3. ``genwrappers.sh`` - Generates a wrapper function for each entry in the index
-file except for the ones that contain the keyword ``patch``. The generated
-wrapper file is called ``<lib>_<fn_name>.S``.
+ file except for the ones that contain the keyword ``patch``. The generated
+ wrapper file is called ``<lib>_<fn_name>.S``.
Patching of functions in library at ROM
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -108,6 +108,8 @@ Build library at ROM
~~~~~~~~~~~~~~~~~~~~~
The environment variable ``CROSS_COMPILE`` must be set as per the user guide.
+In the below example the usage of ROMLIB together with mbed TLS is demonstrated
+to showcase the benefits of library at ROM - it's not mandatory.
::
@@ -120,6 +122,12 @@ The environment variable ``CROSS_COMPILE`` must be set as per the user guide.
USE_ROMLIB=1 \
all fip
+Known issue
+-----------
+When building library at ROM, a clean build is always required. This is
+necessary when changes are made to the index files, e.g. adding new functions,
+patching existing ones etc.
+
--------------
*Copyright (c) 2019, Arm Limited. All rights reserved.*