Add PLAT_xxx_ADDR_SPACE_SIZE definitions
authorAntonio Nino Diaz <antonio.ninodiaz@arm.com>
Tue, 13 Dec 2016 15:28:54 +0000 (15:28 +0000)
committerAntonio Nino Diaz <antonio.ninodiaz@arm.com>
Tue, 13 Dec 2016 15:35:15 +0000 (15:35 +0000)
commit0029624fe2d4c327ac885d04d5933f82f38e7071
tree42c161da85550023bd5c12ed296ef512c8609927
parentd3d6c6e3e9860024cda8766dbcf62f8022a68002
Add PLAT_xxx_ADDR_SPACE_SIZE definitions

Added the definitions `PLAT_PHY_ADDR_SPACE_SIZE` and
`PLAT_VIRT_ADDR_SPACE_SIZE` which specify respectively the physical
and virtual address space size a platform can use.

`ADDR_SPACE_SIZE` is now deprecated. To maintain compatibility, if any
of the previous defines aren't present, the value of `ADDR_SPACE_SIZE`
will be used instead.

For AArch64, register ID_AA64MMFR0_EL1 is checked to calculate the
max PA supported by the hardware and to verify that the previously
mentioned definition is valid. For AArch32, a 40 bit physical
address space is considered.

Added asserts to check for overflows.

Porting guide updated.

Change-Id: Ie8ce1da5967993f0c94dbd4eb9841fc03d5ef8d6
Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
docs/porting-guide.md
include/lib/aarch64/arch.h
include/lib/aarch64/arch_helpers.h
lib/xlat_tables/aarch32/xlat_tables.c
lib/xlat_tables/aarch64/xlat_tables.c
lib/xlat_tables/xlat_tables_common.c
lib/xlat_tables/xlat_tables_private.h