| 23302091 | 14-Aug-2014 |
danh-arm <dan.handley@arm.com> |
Merge pull request #186 from danh-arm/dh/fix-reset-to-bl31
Fix reset to BL3-1 instructions in user guide |
| 186c1d4b | 12-Aug-2014 |
Juan Castillo <juan.castillo@arm.com> |
FVP: make usage of Trusted DRAM optional at build time
This patch groups the current contents of the Trusted DRAM region at address 0x00_0600_0000 (entrypoint mailboxes and BL3-1 parameters) in a si
FVP: make usage of Trusted DRAM optional at build time
This patch groups the current contents of the Trusted DRAM region at address 0x00_0600_0000 (entrypoint mailboxes and BL3-1 parameters) in a single shared memory area that may be allocated to Trusted SRAM (default) or Trusted DRAM at build time by setting the FVP_SHARED_DATA_LOCATION make variable. The size of this shared memory is 4096 bytes.
The combination 'Shared data in Trusted SRAM + TSP in Trusted DRAM' is not currently supported due to restrictions in the maximum number of mmu tables that can be created.
Documentation has been updated to reflect these changes.
Fixes ARM-software/tf-issues#100
Change-Id: I26ff04d33ce4cacf8d770d1a1e24132b4fc53ff0
show more ...
|
| bfb1dd51 | 13-Aug-2014 |
Dan Handley <dan.handley@arm.com> |
Fix reset to BL3-1 instructions in user guide
Fix the instructions for resetting to the BL3-1 entrypoint in the user guide. The BL3-1 and BL3-2 image locations changed in the fix to ARM-software/tf-
Fix reset to BL3-1 instructions in user guide
Fix the instructions for resetting to the BL3-1 entrypoint in the user guide. The BL3-1 and BL3-2 image locations changed in the fix to ARM-software/tf-issues#117 (commit a1b6db6).
Fixes ARM-software/tf-issues#237
Change-Id: I764eb17c66034511efb984c0e7cfda29bd99198f
show more ...
|
| 6f08fd5f | 12-Aug-2014 |
danh-arm <dan.handley@arm.com> |
Merge pull request #183 from danh-arm/dh/print_output2
Add concept of console output log levels
Rationalize console log output |
| 6ad2e461 | 29-Jul-2014 |
Dan Handley <dan.handley@arm.com> |
Rationalize console log output
Fix the following issues with the console log output:
* Make sure the welcome string is the first thing in the log output (during normal boot). * Prefix each message
Rationalize console log output
Fix the following issues with the console log output:
* Make sure the welcome string is the first thing in the log output (during normal boot). * Prefix each message with the BL image name so it's clear which BL the output is coming from. * Ensure all output is wrapped in one of the log output macros so it can be easily compiled out if necessary. Change some of the INFO() messages to VERBOSE(), especially in the TSP. * Create some extra NOTICE() and INFO() messages during cold boot. * Remove all usage of \r in log output.
Fixes ARM-software/tf-issues#231
Change-Id: Ib24f7acb36ce64bbba549f204b9cde2dbb46c8a3
show more ...
|
| 289c28a8 | 08-Aug-2014 |
Dan Handley <dan.handley@arm.com> |
Add concept of console output log levels
Create new LOG_LEVEL build option, which controls the amount of console output compiled into the build. This should be one of the following:
0 (LOG_LEV
Add concept of console output log levels
Create new LOG_LEVEL build option, which controls the amount of console output compiled into the build. This should be one of the following:
0 (LOG_LEVEL_NONE) 10 (LOG_LEVEL_NOTICE) 20 (LOG_LEVEL_ERROR) 30 (LOG_LEVEL_WARNING) 40 (LOG_LEVEL_INFO) 50 (LOG_LEVEL_VERBOSE)
All log output up to and including the log level is compiled into the build. The default value is 40 in debug builds and 20 in release builds.
Complement the existing INFO, WARN and ERROR console output macros with NOTICE and VERBOSE macros, which are conditionally compiled in depending on the value of LOG_LEVEL.
Fixes ARM-software/tf-issues#232
Change-Id: I951e2f333e7b90fc4b1060741d9a6db699d5aa72
show more ...
|
| 46339731 | 12-Aug-2014 |
danh-arm <dan.handley@arm.com> |
Merge pull request #182 from soby-mathew/sm/stack_optimize
Reduce runtime stack size and add compilation macro for each BL stage |
| e08098c2 | 12-Aug-2014 |
danh-arm <dan.handley@arm.com> |
Merge pull request #180 from jcastillo-arm/jc/tf-issues/207
Move up to Linaro 14.07 toolchain |
| 637ebd2e | 12-Aug-2014 |
Juan Castillo <juan.castillo@arm.com> |
FVP: apply new naming conventions to memory regions
Secure ROM at address 0x0000_0000 is defined as FVP_TRUSTED_ROM Secure RAM at address 0x0400_0000 is defined as FVP_TRUSTED_SRAM Secure RAM at add
FVP: apply new naming conventions to memory regions
Secure ROM at address 0x0000_0000 is defined as FVP_TRUSTED_ROM Secure RAM at address 0x0400_0000 is defined as FVP_TRUSTED_SRAM Secure RAM at address 0x0600_0000 is defined as FVP_TRUSTED_DRAM
BLn_BASE and BLn_LIMIT definitions have been updated and are based on these new memory regions.
The available memory for each bootloader in the linker script is defined by BLn_BASE and BLn_LIMIT, instead of the complete memory region.
TZROM_BASE/SIZE and TZRAM_BASE/SIZE are no longer required as part of the platform porting.
FVP common definitions are defined in fvp_def.h while platform_def.h contains exclusively (with a few exceptions) the definitions that are mandatory in the porting guide. Therefore, platform_def.h now includes fvp_def.h instead of the other way around.
Porting guide has been updated to reflect these changes.
Change-Id: I39a6088eb611fc4a347db0db4b8f1f0417dbab05
show more ...
|
| aa442d34 | 04-Aug-2014 |
Soby Mathew <soby.mathew@arm.com> |
Reduce the runtime stack size in BL stages.
This patch separates the stack size for each BL stage and reduces it after stack usage analysis was done.
Fixes ARM-software/tf-issues#200
Change-Id: I8
Reduce the runtime stack size in BL stages.
This patch separates the stack size for each BL stage and reduces it after stack usage analysis was done.
Fixes ARM-software/tf-issues#200
Change-Id: I8edc6de2551b0a6788761d121937692b2149bb29
show more ...
|
| 27905d0a | 16-Jul-2014 |
Soby Mathew <soby.mathew@arm.com> |
Add compilation macro for each BL stage
This patch defines a compile time macro for each boot loader stage which allows compilation of code only for a specific stage.
Change-Id: I3a4068404cd3dc26d6
Add compilation macro for each BL stage
This patch defines a compile time macro for each boot loader stage which allows compilation of code only for a specific stage.
Change-Id: I3a4068404cd3dc26d652556ca9ca7afea8dd28ef
show more ...
|
| 752b05b0 | 01-Aug-2014 |
Juan Castillo <juan.castillo@arm.com> |
Move up to Linaro 14.07 toolchain
Tests show a slight reduction in code size compared to 13.11.
User guide updated.
Fixes ARM-software/tf-issues#207
Change-Id: I9b80a5d7820cdfd443cac4d4b63f925b74
Move up to Linaro 14.07 toolchain
Tests show a slight reduction in code size compared to 13.11.
User guide updated.
Fixes ARM-software/tf-issues#207
Change-Id: I9b80a5d7820cdfd443cac4d4b63f925b74a8c3a3
show more ...
|
| c1efc4c0 | 04-Aug-2014 |
danh-arm <dan.handley@arm.com> |
Merge pull request #179 from jcastillo-arm/jc/tf-issues/219
Call platform_is_primary_cpu() only from reset handler |
| 319609ae | 04-Aug-2014 |
danh-arm <dan.handley@arm.com> |
Merge pull request #178 from soby-mathew/sm/optmize_el3_context
Optimize EL3 register state stored in cpu_context structure |
| d9ec0c14 | 01-Aug-2014 |
danh-arm <dan.handley@arm.com> |
Merge pull request #175 from vikramkanigiri/vk/spd-init-by-stack-unwinding
Vk/spd init by stack unwinding |
| faaa2e76 | 15-Jul-2014 |
Vikram Kanigiri <vikram.kanigiri@arm.com> |
Support asynchronous method for BL3-2 initialization
This patch adds support for BL3-2 initialization by asynchronous method where BL3-1 transfers control to BL3-2 using world switch. After BL3-2 in
Support asynchronous method for BL3-2 initialization
This patch adds support for BL3-2 initialization by asynchronous method where BL3-1 transfers control to BL3-2 using world switch. After BL3-2 initialization, it transfers control to BL3-3 via SPD service handler. The SPD service handler initializes the CPU context to BL3-3 entrypoint depending on the return function indentifier from TSP initialization.
Fixes ARM-software/TF-issues#184
Change-Id: I7b135c2ceeb356d3bb5b6a287932e96ac67c7a34
show more ...
|
| 50e27dad | 15-Jul-2014 |
Vikram Kanigiri <vikram.kanigiri@arm.com> |
Rework the TSPD setup code
There is no mechanism which allows the TSPD to specify what SPSR to use when entering BL3-2 instead of BL3-3. This patch divides the responsibility between tspd_setup() an
Rework the TSPD setup code
There is no mechanism which allows the TSPD to specify what SPSR to use when entering BL3-2 instead of BL3-3. This patch divides the responsibility between tspd_setup() and tspd_init() for initializing the TSPD and TSP to support the alternate BL3-2 initialization flow where BL3-1 handsover control to BL3-2 instead of BL3-3. SPSR generated by TSPD for TSP is preserved due the new division of labour which fixes #174.
This patch also moves the cpu_context initialization code from tspd_setup() to tspd_init() immediately before entering the TSP. Instead tspd_setup() updates the BL3-2 entrypoint info structure with the state required for initializing the TSP later.
Fixes ARM-software/TF-issues#174
Change-Id: Ida0a8a48d466c71d5b07b8c7f2af169b73f96940
show more ...
|
| 53fdcebd | 16-Jul-2014 |
Juan Castillo <juan.castillo@arm.com> |
Call platform_is_primary_cpu() only from reset handler
The purpose of platform_is_primary_cpu() is to determine after reset (BL1 or BL3-1 with reset handler) if the current CPU must follow the cold
Call platform_is_primary_cpu() only from reset handler
The purpose of platform_is_primary_cpu() is to determine after reset (BL1 or BL3-1 with reset handler) if the current CPU must follow the cold boot path (primary CPU), or wait in a safe state (secondary CPU) until the primary CPU has finished the system initialization.
This patch removes redundant calls to platform_is_primary_cpu() in subsequent bootloader entrypoints since the reset handler already guarantees that code is executed exclusively on the primary CPU.
Additionally, this patch removes the weak definition of platform_is_primary_cpu(), so the implementation of this function becomes mandatory. Removing the weak symbol avoids other bootloaders accidentally picking up an invalid definition in case the porting layer makes the real function available only to BL1.
The define PRIMARY_CPU is no longer mandatory in the platform porting because platform_is_primary_cpu() hides the implementation details (for instance, there may be platforms that report the primary CPU in a system register). The primary CPU definition in FVP has been moved to fvp_def.h.
The porting guide has been updated accordingly.
Fixes ARM-software/tf-issues#219
Change-Id: If675a1de8e8d25122b7fef147cb238d939f90b5e
show more ...
|
| fdfabec1 | 04-Jul-2014 |
Soby Mathew <soby.mathew@arm.com> |
Optimize EL3 register state stored in cpu_context structure
This patch further optimizes the EL3 register state stored in cpu_context. The 2 registers which are removed from cpu_context are:
* cn
Optimize EL3 register state stored in cpu_context structure
This patch further optimizes the EL3 register state stored in cpu_context. The 2 registers which are removed from cpu_context are:
* cntfrq_el0 is the system timer register which is writable only in EL3 and it can be programmed during cold/warm boot. Hence it need not be saved to cpu_context.
* cptr_el3 controls access to Trace, Floating-point, and Advanced SIMD functionality and it is programmed every time during cold and warm boot. The current BL3-1 implementation does not need to modify the access controls during normal execution and hence they are expected to remain static.
Fixes ARM-software/tf-issues#197
Change-Id: I599ceee3b73a7dcfd37069fd41b60e3d397a7b18
show more ...
|
| dd2bdee6 | 28-Jul-2014 |
danh-arm <dan.handley@arm.com> |
Merge pull request #177 from jcastillo-arm/jc/tf-issues/096
Rework incorrect use of assert() and panic() in codebase |
| 6397bf6a | 28-Jul-2014 |
danh-arm <dan.handley@arm.com> |
Merge pull request #172 from soby-mathew/sm/asm_assert
Introduce asm assert and optimize crash reporting |
| 9fd41277 | 28-Jul-2014 |
danh-arm <dan.handley@arm.com> |
Merge pull request #170 from achingupta/ag/tf-issues#226
Simplify management of SCTLR_EL3 and SCTLR_EL1 |
| d9b1128b | 28-Jul-2014 |
danh-arm <dan.handley@arm.com> |
Merge pull request #169 from achingupta/ag/tf-issues#198
Ag/tf issues#198 |
| d3280beb | 05-Jun-2014 |
Juan Castillo <juan.castillo@arm.com> |
Rework incorrect use of assert() and panic() in codebase
Assert a valid security state using the macro sec_state_is_valid(). Replace assert() with panic() in those cases that might arise because of
Rework incorrect use of assert() and panic() in codebase
Assert a valid security state using the macro sec_state_is_valid(). Replace assert() with panic() in those cases that might arise because of runtime errors and not programming errors. Replace panic() with assert() in those cases that might arise because of programming errors.
Fixes ARM-software/tf-issues#96
Change-Id: I51e9ef0439fd5ff5e0edfef49050b69804bf14d5
show more ...
|
| 8c106902 | 16-Jul-2014 |
Soby Mathew <soby.mathew@arm.com> |
Add CPUECTLR_EL1 and Snoop Control register to crash reporting
This patch adds the CPUECTLR_EL1 register and the CCI Snoop Control register to the list of registers being reported when an unhandled
Add CPUECTLR_EL1 and Snoop Control register to crash reporting
This patch adds the CPUECTLR_EL1 register and the CCI Snoop Control register to the list of registers being reported when an unhandled exception occurs.
Change-Id: I2d997f2d6ef3d7fa1fad5efe3364dc9058f9f22c
show more ...
|