mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-17 01:54:22 +00:00
build: Define build option for hardware-assisted coherency
The boolean build option HW_ASSISTED_COHERENCY is introduced to enable various optimizations in ARM Trusted Software, when built for such systems. It's set to 0 by default. Change-Id: I638390da6e1718fe024dcf5b402e07084f1eb014 Signed-off-by: Jeenu Viswambharan <jeenu.viswambharan@arm.com>
This commit is contained in:
parent
56036edba1
commit
3c251af392
3 changed files with 15 additions and 0 deletions
2
Makefile
2
Makefile
|
@ -385,6 +385,7 @@ $(eval $(call assert_boolean,ENABLE_PSCI_STAT))
|
|||
$(eval $(call assert_boolean,ENABLE_RUNTIME_INSTRUMENTATION))
|
||||
$(eval $(call assert_boolean,ERROR_DEPRECATED))
|
||||
$(eval $(call assert_boolean,GENERATE_COT))
|
||||
$(eval $(call assert_boolean,HW_ASSISTED_COHERENCY))
|
||||
$(eval $(call assert_boolean,LOAD_IMAGE_V2))
|
||||
$(eval $(call assert_boolean,NS_TIMER_SWITCH))
|
||||
$(eval $(call assert_boolean,PL011_GENERIC_UART))
|
||||
|
@ -419,6 +420,7 @@ $(eval $(call add_define,ENABLE_PMF))
|
|||
$(eval $(call add_define,ENABLE_PSCI_STAT))
|
||||
$(eval $(call add_define,ENABLE_RUNTIME_INSTRUMENTATION))
|
||||
$(eval $(call add_define,ERROR_DEPRECATED))
|
||||
$(eval $(call add_define,HW_ASSISTED_COHERENCY))
|
||||
$(eval $(call add_define,LOAD_IMAGE_V2))
|
||||
$(eval $(call add_define,LOG_LEVEL))
|
||||
$(eval $(call add_define,NS_TIMER_SWITCH))
|
||||
|
|
|
@ -328,6 +328,15 @@ performed.
|
|||
* `HANDLE_EA_EL3_FIRST`: When defined External Aborts and SError Interrupts
|
||||
will be always trapped in EL3 i.e. in BL31 at runtime.
|
||||
|
||||
* `HW_ASSISTED_COHERENCY`: On most ARM systems to-date, platform-specific
|
||||
software operations are required for CPUs to enter and exit coherency.
|
||||
However, there exists newer systems where CPUs' entry to and exit from
|
||||
coherency is managed in hardware. Such systems require software to only
|
||||
initiate the operations, and the rest is managed in hardware, minimizing
|
||||
active software management. In such systems, this boolean option enables ARM
|
||||
Trusted Firmware to carry out build and run-time optimizations during boot
|
||||
and power management operations. This option defaults to 0.
|
||||
|
||||
* `LOAD_IMAGE_V2`: Boolean option to enable support for new version (v2) of
|
||||
image loading, which provides more flexibility and scalability around what
|
||||
images are loaded and executed during boot. Default is 0.
|
||||
|
|
|
@ -105,6 +105,10 @@ FWU_FIP_NAME := fwu_fip.bin
|
|||
# For Chain of Trust
|
||||
GENERATE_COT := 0
|
||||
|
||||
# Whether system coherency is managed in hardware, without explicit software
|
||||
# operations.
|
||||
HW_ASSISTED_COHERENCY := 0
|
||||
|
||||
# Flag to enable new version of image loading
|
||||
LOAD_IMAGE_V2 := 0
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue