blob: 963f57873f31449daaa622e133bbdc238f8a7524 [file] [log] [blame] [view]
James Morrisseyba3155b2013-10-29 10:56:46 +00001ARM Trusted Firmware
2====================
Harry Liebelcff4e292013-11-05 18:00:38 +00003
4Detailed changes since last release
5-----------------------------------
6
James Morrisseyba3155b2013-10-29 10:56:46 +00007* Support for Foundation FVP Version 2.0 added.
Harry Liebelcff4e292013-11-05 18:00:38 +00008 The documented UEFI configuration disables some devices that are unavailable
9 in the Foundation FVP, including MMC and CLCD. The resultant UEFI binary can
10 be used on the AEMv8 and Cortex-A57-A53 FVPs, as well as the Foundation FVP.
James Morrisseyba3155b2013-10-29 10:56:46 +000011 NOTE: The software will not work on Version 1.0 of the Foundation FVP.
12
13* Regression-checked against latest Base FVPs (Version 5.2).
14
15* The supplied FDTs expose the Interrupt Translation Service (ITS) available
16 in GICv3.
Harry Liebelcff4e292013-11-05 18:00:38 +000017
Sandrine Bailleux204aa032013-10-28 15:14:00 +000018* Fixed various GCC compiler warnings.
19
Sandrine Bailleux37382742013-11-18 17:26:59 +000020* Unmask SError and Debug exceptions in the trusted firmware.
21 Also route external abort and SError interrupts to EL3.
22
Harry Liebel375ae682013-11-18 16:05:21 +000023* The amount of physical RAM available to Linux as specified in the FDTs for
24 Base FVPs have been increased from 2GB to 4GB. This resolves the issue of
25 failing to start user-space when using a RAM-disk file-system.
26
James Morrisseyeaaeece2013-11-01 13:56:59 +000027* Build products are now created in a separate build directory tree.
28
Sandrine Bailleuxcd29b0a2013-11-27 10:32:17 +000029* Analyze at link-time whether bootloader images will fit in memory and won't
30 overlap each other at run time. If it is not the case then image linking
31 will now fail.
32
33* Reduce the size of the bootloader images by cutting some sections out of
34 their disk images and allocating them at load time, whenever possible.
35
36* Properly initialise the C runtime environment. C code can now safely assume
37 that global variables are initialised to 0 and that initialised data holds
38 the correct value.
39
40* General changes on the memory layout: some sections have been moved, some of
41 them have been merged together, and some alignment constraints on sections
42 have changed.
Harry Liebelcff4e292013-11-05 18:00:38 +000043
Achin Gupta4f6ad662013-10-25 09:08:21 +010044ARM Trusted Firmware - version 0.2
45==================================
46
47New features
48------------
49
50* First source release.
51
52* Code for the PSCI suspend feature is supplied, although this is not enabled
53 by default since there are known issues (see below).
54
55
56Issues resolved since last release
57----------------------------------
58
59* The "psci" nodes in the FDTs provided in this release now fully comply
60 with the recommendations made in the PSCI specification.
61
62
63Known issues
64------------
65
66The following is a list of issues which are expected to be fixed in the future
67releases of the ARM Trusted Firmware.
68
69* The TrustZone Address Space Controller (TZC-400) is not being programmed
70 yet. Use of model parameter `-C bp.secure_memory=1` is not supported.
71
72* No support yet for secure world interrupt handling or for switching context
73 between secure and normal worlds in EL3.
74
75* GICv3 support is experimental. The Linux kernel patches to support this are
76 not widely available. There are known issues with GICv3 initialization in
77 the ARM Trusted Firmware.
78
79* Dynamic image loading is not available yet. The current image loader
80 implementation (used to load BL2 and all subsequent images) has some
81 limitations. Changing BL2 or BL3-1 load addresses in certain ways can lead
82 to loading errors, even if the images should theoretically fit in memory.
83
84* Although support for PSCI `CPU_SUSPEND` is present, it is not yet stable
85 and ready for use.
86
James Morrisseyba3155b2013-10-29 10:56:46 +000087* PSCI API calls `AFFINITY_INFO` & `PSCI_VERSION` are implemented but have not
Achin Gupta4f6ad662013-10-25 09:08:21 +010088 been tested.
89
90* The ARM Trusted Firmware make files result in all build artifacts being
91 placed in the root of the project. These should be placed in appropriate
92 sub-directories.
93
94* The compilation of ARM Trusted Firmware is not free from compilation
95 warnings. Some of these warnings have not been investigated yet so they
96 could mask real bugs.
97
98* The ARM Trusted Firmware currently uses toolchain/system include files like
99 stdio.h. It should provide versions of these within the project to maintain
100 compatibility between toolchains/systems.
101
102* The PSCI code takes some locks in an incorrect sequence. This may cause
103 problems with suspend and hotplug in certain conditions.
104
105* The Linux kernel used in this release is based on version 3.12-rc4. Using
106 this kernel with the ARM Trusted Firmware fails to start the file-system as
107 a RAM-disk. It fails to execute user-space `init` from the RAM-disk. As an
108 alternative, the VirtioBlock mechanism can be used to provide a file-system
109 to the kernel.
110
111
112Detailed changes since last release
113-----------------------------------
114
115First source release – not applicable.
116
117- - - - - - - - - - - - - - - - - - - - - - - - - -
118
119_Copyright (c) 2013 ARM Ltd. All rights reserved._