]> git.baikalelectronics.ru Git - arm-tf.git/commit
Changes necessary to support SEPARATE_NOBITS_REGION feature
authorMadhukar Pappireddy <madhukar.pappireddy@arm.com>
Fri, 17 Jan 2020 04:21:33 +0000 (22:21 -0600)
committerMadhukar Pappireddy <madhukar.pappireddy@arm.com>
Wed, 22 Jan 2020 01:24:18 +0000 (19:24 -0600)
commit76d84cbc60ab3ee7bf40d53487f85ed7417bdcc3
treeef71a259ea0ba519ef54dc5944c69e85d67bed64
parentd81e38f66e232ddd2590f50cafe88eef52d4a752
Changes necessary to support SEPARATE_NOBITS_REGION feature

Since BL31 PROGBITS and BL31 NOBITS sections are going to be
in non-adjacent memory regions, potentially far from each other,
some fixes are needed to support it completely.

1. adr instruction only allows computing the effective address
of a location only within 1MB range of the PC. However, adrp
instruction together with an add permits position independent
address of any location with 4GB range of PC.

2. Since BL31 _RW_END_ marks the end of BL31 image, care must be
taken that it is aligned to page size since we map this memory
region in BL31 using xlat_v2 lib utils which mandate alignment of
image size to page granularity.

Change-Id: Ic745c5a130fe4239fa2742142d083b2bdc4e8b85
Signed-off-by: Madhukar Pappireddy <madhukar.pappireddy@arm.com>
bl31/aarch64/bl31_entrypoint.S
bl31/aarch64/runtime_exceptions.S
bl31/bl31.ld.S
lib/el3_runtime/aarch64/cpu_data.S