Commit Graph

3 Commits

Author SHA1 Message Date
Sandrine Bailleux 494db58083 juno: Use the enable_mmu_elX() functions from lib/aarch64/xlat_tables.c
Juno code can re-use the enable_mmu_elX() functions from
lib/aarch64/xlat_tables.c.

Because the Juno port now includes plat/common/aarch64/plat_common.c
the juno specific 'plat_common.c' needs to be renamed to avoid
name conflicts at build time.

Change-Id: I1e9cc6484643fbf516dfac0236573e0474ccc0a2
2014-06-05 17:39:40 +01:00
Sandrine Bailleux 6825c0585f juno: Compile GIC files in BL3-2
Change-Id: Id57a159edf2a54596f4647ab80bc3ff6e4c6a7d0
2014-06-05 17:39:40 +01:00
Sandrine Bailleux fe23b15d11 juno: Add support for BL3-2 image
This patch implements the TSP on Juno. It executes from Secure RAM.

Also, the other bootloader images (i.e. BL1 R/W, BL2 and BL3-1) have
been moved around. The reason is, although there was enough space
overall to store the TSP in SRAM, there was no contiguous free chunk
of SRAM big enough to hold it.

This patch keeps the overall memory layout (i.e. keeping BL1 R/W at
the bottom, BL2 at the top and BL3-1 in between) but moves the base
addresses of all the bootloader images in such a way that:
 - memory fragmentation is reduced enough to fit BL3-2 in;
 - new base addresses are suitable for release builds as well as debug
   ones;
 - each image has a few extra kilobytes for future growth.
   BL3-1 and BL3-2 are the images which received the biggest slice
   of the cake since they will most probably grow the most.

A few useful numbers for reference (valid at the time of this patch):
        |-----------------------|-------------------------------
        |  image size (debug)   |  extra space for the future
--------|-----------------------|-------------------------------
BL1 R/W |         28 KB         |            4 KB
BL2     |         48 KB         |            4 KB
BL3-1   |         96 KB         |            8 KB
BL3-2   |         56 KB         |            8 KB
--------|-----------------------|-------------------------------
Total   |        228 KB         |           24 KB       = 252 KB
--------|-----------------------|-------------------------------

Note: On Juno, although the Secure RAM is 256 KB, the first 4KB
are reserved for the AP/SCP mailboxes.

Change-Id: I999ec39589c45beabe1ecd772641623e58569a6e
2014-06-05 17:39:40 +01:00