aboutsummaryrefslogtreecommitdiffstats
path: root/bl31/bl31.ld.S
Commit message (Collapse)AuthorAgeFilesLines
...
* Use --gc-sections during linkAndrew Thoelke2014-03-261-6/+6
| | | | | | | | | | All common functions are being built into all binary images, whether or not they are actually used. This change enables the use of -ffunction-sections, -fdata-sections and --gc-sections in the compiler and linker to remove unused code and data from the images. Change-Id: Ia9f78c01054ac4fa15d145af38b88a0d6fb7d409
* Specify image entry in linker scriptJeenu Viswambharan2014-03-201-0/+1
| | | | | | | | | | | | | | | At present, the entry point for each BL image is specified via the Makefiles and provided on the command line to the linker. When using a link script the entry point should rather be specified via the ENTRY() directive in the link script. This patch updates linker scripts of all BL images to specify the entry point using the ENTRY() directive. It also removes the --entry flag passed to the linker through Makefile. Fixes issue ARM-software/tf-issues#66 Change-Id: I1369493ebbacea31885b51185441f6b628cf8da0
* Remove duplicate xlat_table descriptionsJeenu Viswambharan2014-02-261-10/+1
| | | | | | | | The BL31 and BL2 linker scripts ended up having duplicate descriptions for xlat_tables section. This patch removes those duplicate descriptions. Change-Id: Ibbdda0902c57fca5ea4e91e0baefa6df8f0a9bb1
* Factor out translation table setup in ARM FVP portAchin Gupta2014-02-201-1/+10
| | | | | | | | | | | | | | | | | | | This patch factors out the ARM FVP specific code to create MMU translation tables so that it is possible for a boot loader stage to create a different set of tables instead of using the default ones. The default translation tables are created with the assumption that the calling boot loader stage executes out of secure SRAM. This might not be true for the BL3_2 stage in the future. A boot loader stage can define the `fill_xlation_tables()` function as per its requirements. It returns a reference to the level 1 translation table which is used by the common platform code to setup the TTBR_EL3. This patch is a temporary solution before a larger rework of translation table creation logic is introduced. Change-Id: I09a075d5da16822ee32a411a9dbe284718fb4ff6
* Add runtime services frameworkAchin Gupta2014-02-171-0/+7
| | | | | | | | | This patch introduces the framework to enable registration and initialisation of runtime services. PSCI is registered and initialised as a runtime service. Handling of runtime service requests will be implemented in subsequent patches. Change-Id: Id21e7ddc5a33d42b7d6e455b41155fc5441a9547
* Setup VBAR_EL3 incrementallyAchin Gupta2014-02-171-0/+1
| | | | | | | | | | | | | This patch ensures that VBAR_EL3 points to the simple stack-less 'early_exceptions' when the C runtime stack is not correctly setup to use the more complex 'runtime_exceptions'. It is initialised to 'runtime_exceptions' once this is done. This patch also moves all exception vectors into a '.vectors' section and modifies linker scripts to place all such sections together. This will minimize space wastage from alignment restrictions. Change-Id: I8c3e596ea3412c8bd582af9e8d622bb1cb2e049d
* Move translation tables into separate sectionJeenu Viswambharan2014-02-171-0/+9
| | | | | | | | | This patch moves the translation tables into their own section. This saves space that would otherwise have been lost in padding due to page table alignment constraints. The BL31 and BL32 bases have been consequently adjusted. Change-Id: Ibd65ae8a5ce4c4ea9a71a794c95bbff40dc63e65
* Update year in copyright text to 2014Dan Handley2014-01-171-1/+1
| | | | Change-Id: Ic7fb61aabae1d515b9e6baf3dd003807ff42da60
* Enable third party contributionsDan Handley2013-12-051-1/+1
| | | | | | | | - Add instructions for contributing to ARM Trusted Firmware. - Update copyright text in all files to acknowledge contributors. Change-Id: I9311aac81b00c6c167d2f8c889aea403b84450e5
* Various improvements/cleanups on the linker scriptsSandrine Bailleux2013-12-051-28/+52
| | | | | | | | | | | | | | | | | - Check at link-time that bootloader images will fit in memory at run time and that they won't overlap each other. - Remove text and rodata orphan sections. - Define new linker symbols to remove the need for platform setup code to know the order of sections. - Reduce the size of the raw binary images by cutting some sections out of the disk image and allocating them at load time, whenever possible. - Rework alignment constraints on sections. - Remove unused linker symbols. - Homogenize linker symbols names across all BLs. - Add some comments in the linker scripts. Change-Id: I47a328af0ccc7c8ab47fcc0dc6e7dd26160610b9
* ARMv8 Trusted Firmware release v0.2Achin Gupta2013-10-251-0/+88