xref: /aosp_15_r20/external/arm-trusted-firmware/make_helpers/defaults.mk (revision 54fd6939e177f8ff529b10183254802c76df6d08)
1*54fd6939SJiyong Park#
2*54fd6939SJiyong Park# Copyright (c) 2016-2021, Arm Limited. All rights reserved.
3*54fd6939SJiyong Park#
4*54fd6939SJiyong Park# SPDX-License-Identifier: BSD-3-Clause
5*54fd6939SJiyong Park#
6*54fd6939SJiyong Park
7*54fd6939SJiyong Park# Default, static values for build variables, listed in alphabetic order.
8*54fd6939SJiyong Park# Dependencies between build options, if any, are handled in the top-level
9*54fd6939SJiyong Park# Makefile, after this file is included. This ensures that the former is better
10*54fd6939SJiyong Park# poised to handle dependencies, as all build variables would have a default
11*54fd6939SJiyong Park# value by then.
12*54fd6939SJiyong Park
13*54fd6939SJiyong Park# Use T32 by default
14*54fd6939SJiyong ParkAARCH32_INSTRUCTION_SET		:= T32
15*54fd6939SJiyong Park
16*54fd6939SJiyong Park# The AArch32 Secure Payload to be built as BL32 image
17*54fd6939SJiyong ParkAARCH32_SP			:= none
18*54fd6939SJiyong Park
19*54fd6939SJiyong Park# The Target build architecture. Supported values are: aarch64, aarch32.
20*54fd6939SJiyong ParkARCH				:= aarch64
21*54fd6939SJiyong Park
22*54fd6939SJiyong Park# ARM Architecture feature modifiers: none by default
23*54fd6939SJiyong ParkARM_ARCH_FEATURE		:= none
24*54fd6939SJiyong Park
25*54fd6939SJiyong Park# ARM Architecture major and minor versions: 8.0 by default.
26*54fd6939SJiyong ParkARM_ARCH_MAJOR			:= 8
27*54fd6939SJiyong ParkARM_ARCH_MINOR			:= 0
28*54fd6939SJiyong Park
29*54fd6939SJiyong Park# Base commit to perform code check on
30*54fd6939SJiyong ParkBASE_COMMIT			:= origin/master
31*54fd6939SJiyong Park
32*54fd6939SJiyong Park# Execute BL2 at EL3
33*54fd6939SJiyong ParkBL2_AT_EL3			:= 0
34*54fd6939SJiyong Park
35*54fd6939SJiyong Park# Only use SP packages if SP layout JSON is defined
36*54fd6939SJiyong ParkBL2_ENABLE_SP_LOAD		:= 0
37*54fd6939SJiyong Park
38*54fd6939SJiyong Park# BL2 image is stored in XIP memory, for now, this option is only supported
39*54fd6939SJiyong Park# when BL2_AT_EL3 is 1.
40*54fd6939SJiyong ParkBL2_IN_XIP_MEM			:= 0
41*54fd6939SJiyong Park
42*54fd6939SJiyong Park# Do dcache invalidate upon BL2 entry at EL3
43*54fd6939SJiyong ParkBL2_INV_DCACHE			:= 1
44*54fd6939SJiyong Park
45*54fd6939SJiyong Park# Select the branch protection features to use.
46*54fd6939SJiyong ParkBRANCH_PROTECTION		:= 0
47*54fd6939SJiyong Park
48*54fd6939SJiyong Park# By default, consider that the platform may release several CPUs out of reset.
49*54fd6939SJiyong Park# The platform Makefile is free to override this value.
50*54fd6939SJiyong ParkCOLD_BOOT_SINGLE_CPU		:= 0
51*54fd6939SJiyong Park
52*54fd6939SJiyong Park# Flag to compile in coreboot support code. Exclude by default. The coreboot
53*54fd6939SJiyong Park# Makefile system will set this when compiling TF as part of a coreboot image.
54*54fd6939SJiyong ParkCOREBOOT			:= 0
55*54fd6939SJiyong Park
56*54fd6939SJiyong Park# For Chain of Trust
57*54fd6939SJiyong ParkCREATE_KEYS			:= 1
58*54fd6939SJiyong Park
59*54fd6939SJiyong Park# Build flag to include AArch32 registers in cpu context save and restore during
60*54fd6939SJiyong Park# world switch. This flag must be set to 0 for AArch64-only platforms.
61*54fd6939SJiyong ParkCTX_INCLUDE_AARCH32_REGS	:= 1
62*54fd6939SJiyong Park
63*54fd6939SJiyong Park# Include FP registers in cpu context
64*54fd6939SJiyong ParkCTX_INCLUDE_FPREGS		:= 0
65*54fd6939SJiyong Park
66*54fd6939SJiyong Park# Include pointer authentication (ARMv8.3-PAuth) registers in cpu context. This
67*54fd6939SJiyong Park# must be set to 1 if the platform wants to use this feature in the Secure
68*54fd6939SJiyong Park# world. It is not needed to use it in the Non-secure world.
69*54fd6939SJiyong ParkCTX_INCLUDE_PAUTH_REGS		:= 0
70*54fd6939SJiyong Park
71*54fd6939SJiyong Park# Include Nested virtualization control (Armv8.4-NV) registers in cpu context.
72*54fd6939SJiyong Park# This must be set to 1 if architecture implements Nested Virtualization
73*54fd6939SJiyong Park# Extension and platform wants to use this feature in the Secure world
74*54fd6939SJiyong ParkCTX_INCLUDE_NEVE_REGS		:= 0
75*54fd6939SJiyong Park
76*54fd6939SJiyong Park# Debug build
77*54fd6939SJiyong ParkDEBUG				:= 0
78*54fd6939SJiyong Park
79*54fd6939SJiyong Park# By default disable authenticated decryption support.
80*54fd6939SJiyong ParkDECRYPTION_SUPPORT		:= none
81*54fd6939SJiyong Park
82*54fd6939SJiyong Park# Build platform
83*54fd6939SJiyong ParkDEFAULT_PLAT			:= fvp
84*54fd6939SJiyong Park
85*54fd6939SJiyong Park# Disable the generation of the binary image (ELF only).
86*54fd6939SJiyong ParkDISABLE_BIN_GENERATION		:= 0
87*54fd6939SJiyong Park
88*54fd6939SJiyong Park# Disable MTPMU if FEAT_MTPMU is supported. Default is 0 to keep backwards
89*54fd6939SJiyong Park# compatibility.
90*54fd6939SJiyong ParkDISABLE_MTPMU			:= 0
91*54fd6939SJiyong Park
92*54fd6939SJiyong Park# Enable capability to disable authentication dynamically. Only meant for
93*54fd6939SJiyong Park# development platforms.
94*54fd6939SJiyong ParkDYN_DISABLE_AUTH		:= 0
95*54fd6939SJiyong Park
96*54fd6939SJiyong Park# Build option to enable MPAM for lower ELs
97*54fd6939SJiyong ParkENABLE_MPAM_FOR_LOWER_ELS	:= 0
98*54fd6939SJiyong Park
99*54fd6939SJiyong Park# Enable the Maximum Power Mitigation Mechanism on supporting cores.
100*54fd6939SJiyong ParkENABLE_MPMM			:= 0
101*54fd6939SJiyong Park
102*54fd6939SJiyong Park# Enable MPMM configuration via FCONF.
103*54fd6939SJiyong ParkENABLE_MPMM_FCONF		:= 0
104*54fd6939SJiyong Park
105*54fd6939SJiyong Park# Flag to Enable Position Independant support (PIE)
106*54fd6939SJiyong ParkENABLE_PIE			:= 0
107*54fd6939SJiyong Park
108*54fd6939SJiyong Park# Flag to enable Performance Measurement Framework
109*54fd6939SJiyong ParkENABLE_PMF			:= 0
110*54fd6939SJiyong Park
111*54fd6939SJiyong Park# Flag to enable PSCI STATs functionality
112*54fd6939SJiyong ParkENABLE_PSCI_STAT		:= 0
113*54fd6939SJiyong Park
114*54fd6939SJiyong Park# Flag to enable Realm Management Extension (FEAT_RME)
115*54fd6939SJiyong ParkENABLE_RME			:= 0
116*54fd6939SJiyong Park
117*54fd6939SJiyong Park# Flag to enable runtime instrumentation using PMF
118*54fd6939SJiyong ParkENABLE_RUNTIME_INSTRUMENTATION	:= 0
119*54fd6939SJiyong Park
120*54fd6939SJiyong Park# Flag to enable stack corruption protection
121*54fd6939SJiyong ParkENABLE_STACK_PROTECTOR		:= 0
122*54fd6939SJiyong Park
123*54fd6939SJiyong Park# Flag to enable exception handling in EL3
124*54fd6939SJiyong ParkEL3_EXCEPTION_HANDLING		:= 0
125*54fd6939SJiyong Park
126*54fd6939SJiyong Park# Flag to enable Branch Target Identification.
127*54fd6939SJiyong Park# Internal flag not meant for direct setting.
128*54fd6939SJiyong Park# Use BRANCH_PROTECTION to enable BTI.
129*54fd6939SJiyong ParkENABLE_BTI			:= 0
130*54fd6939SJiyong Park
131*54fd6939SJiyong Park# Flag to enable Pointer Authentication.
132*54fd6939SJiyong Park# Internal flag not meant for direct setting.
133*54fd6939SJiyong Park# Use BRANCH_PROTECTION to enable PAUTH.
134*54fd6939SJiyong ParkENABLE_PAUTH			:= 0
135*54fd6939SJiyong Park
136*54fd6939SJiyong Park# Flag to enable access to the HCRX_EL2 register by setting SCR_EL3.HXEn.
137*54fd6939SJiyong ParkENABLE_FEAT_HCX			:= 0
138*54fd6939SJiyong Park
139*54fd6939SJiyong Park# By default BL31 encryption disabled
140*54fd6939SJiyong ParkENCRYPT_BL31			:= 0
141*54fd6939SJiyong Park
142*54fd6939SJiyong Park# By default BL32 encryption disabled
143*54fd6939SJiyong ParkENCRYPT_BL32			:= 0
144*54fd6939SJiyong Park
145*54fd6939SJiyong Park# Default dummy firmware encryption key
146*54fd6939SJiyong ParkENC_KEY	:= 1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef
147*54fd6939SJiyong Park
148*54fd6939SJiyong Park# Default dummy nonce for firmware encryption
149*54fd6939SJiyong ParkENC_NONCE			:= 1234567890abcdef12345678
150*54fd6939SJiyong Park
151*54fd6939SJiyong Park# Build flag to treat usage of deprecated platform and framework APIs as error.
152*54fd6939SJiyong ParkERROR_DEPRECATED		:= 0
153*54fd6939SJiyong Park
154*54fd6939SJiyong Park# Fault injection support
155*54fd6939SJiyong ParkFAULT_INJECTION_SUPPORT		:= 0
156*54fd6939SJiyong Park
157*54fd6939SJiyong Park# Byte alignment that each component in FIP is aligned to
158*54fd6939SJiyong ParkFIP_ALIGN			:= 0
159*54fd6939SJiyong Park
160*54fd6939SJiyong Park# Default FIP file name
161*54fd6939SJiyong ParkFIP_NAME			:= fip.bin
162*54fd6939SJiyong Park
163*54fd6939SJiyong Park# Default FWU_FIP file name
164*54fd6939SJiyong ParkFWU_FIP_NAME			:= fwu_fip.bin
165*54fd6939SJiyong Park
166*54fd6939SJiyong Park# By default firmware encryption with SSK
167*54fd6939SJiyong ParkFW_ENC_STATUS			:= 0
168*54fd6939SJiyong Park
169*54fd6939SJiyong Park# For Chain of Trust
170*54fd6939SJiyong ParkGENERATE_COT			:= 0
171*54fd6939SJiyong Park
172*54fd6939SJiyong Park# Hint platform interrupt control layer that Group 0 interrupts are for EL3. By
173*54fd6939SJiyong Park# default, they are for Secure EL1.
174*54fd6939SJiyong ParkGICV2_G0_FOR_EL3		:= 0
175*54fd6939SJiyong Park
176*54fd6939SJiyong Park# Route External Aborts to EL3. Disabled by default; External Aborts are handled
177*54fd6939SJiyong Park# by lower ELs.
178*54fd6939SJiyong ParkHANDLE_EA_EL3_FIRST		:= 0
179*54fd6939SJiyong Park
180*54fd6939SJiyong Park# Secure hash algorithm flag, accepts 3 values: sha256, sha384 and sha512.
181*54fd6939SJiyong Park# The default value is sha256.
182*54fd6939SJiyong ParkHASH_ALG			:= sha256
183*54fd6939SJiyong Park
184*54fd6939SJiyong Park# Whether system coherency is managed in hardware, without explicit software
185*54fd6939SJiyong Park# operations.
186*54fd6939SJiyong ParkHW_ASSISTED_COHERENCY		:= 0
187*54fd6939SJiyong Park
188*54fd6939SJiyong Park# Set the default algorithm for the generation of Trusted Board Boot keys
189*54fd6939SJiyong ParkKEY_ALG				:= rsa
190*54fd6939SJiyong Park
191*54fd6939SJiyong Park# Set the default key size in case KEY_ALG is rsa
192*54fd6939SJiyong Parkifeq ($(KEY_ALG),rsa)
193*54fd6939SJiyong ParkKEY_SIZE			:= 2048
194*54fd6939SJiyong Parkendif
195*54fd6939SJiyong Park
196*54fd6939SJiyong Park# Option to build TF with Measured Boot support
197*54fd6939SJiyong ParkMEASURED_BOOT			:= 0
198*54fd6939SJiyong Park
199*54fd6939SJiyong Park# NS timer register save and restore
200*54fd6939SJiyong ParkNS_TIMER_SWITCH			:= 0
201*54fd6939SJiyong Park
202*54fd6939SJiyong Park# Include lib/libc in the final image
203*54fd6939SJiyong ParkOVERRIDE_LIBC			:= 0
204*54fd6939SJiyong Park
205*54fd6939SJiyong Park# Build PL011 UART driver in minimal generic UART mode
206*54fd6939SJiyong ParkPL011_GENERIC_UART		:= 0
207*54fd6939SJiyong Park
208*54fd6939SJiyong Park# By default, consider that the platform's reset address is not programmable.
209*54fd6939SJiyong Park# The platform Makefile is free to override this value.
210*54fd6939SJiyong ParkPROGRAMMABLE_RESET_ADDRESS	:= 0
211*54fd6939SJiyong Park
212*54fd6939SJiyong Park# Flag used to choose the power state format: Extended State-ID or Original
213*54fd6939SJiyong ParkPSCI_EXTENDED_STATE_ID		:= 0
214*54fd6939SJiyong Park
215*54fd6939SJiyong Park# Enable RAS support
216*54fd6939SJiyong ParkRAS_EXTENSION			:= 0
217*54fd6939SJiyong Park
218*54fd6939SJiyong Park# By default, BL1 acts as the reset handler, not BL31
219*54fd6939SJiyong ParkRESET_TO_BL31			:= 0
220*54fd6939SJiyong Park
221*54fd6939SJiyong Park# For Chain of Trust
222*54fd6939SJiyong ParkSAVE_KEYS			:= 0
223*54fd6939SJiyong Park
224*54fd6939SJiyong Park# Software Delegated Exception support
225*54fd6939SJiyong ParkSDEI_SUPPORT			:= 0
226*54fd6939SJiyong Park
227*54fd6939SJiyong Park# True Random Number firmware Interface
228*54fd6939SJiyong ParkTRNG_SUPPORT			:= 0
229*54fd6939SJiyong Park
230*54fd6939SJiyong Park# SMCCC PCI support
231*54fd6939SJiyong ParkSMC_PCI_SUPPORT			:= 0
232*54fd6939SJiyong Park
233*54fd6939SJiyong Park# Whether code and read-only data should be put on separate memory pages. The
234*54fd6939SJiyong Park# platform Makefile is free to override this value.
235*54fd6939SJiyong ParkSEPARATE_CODE_AND_RODATA	:= 0
236*54fd6939SJiyong Park
237*54fd6939SJiyong Park# Put NOBITS sections (.bss, stacks, page tables, and coherent memory) in a
238*54fd6939SJiyong Park# separate memory region, which may be discontiguous from the rest of BL31.
239*54fd6939SJiyong ParkSEPARATE_NOBITS_REGION		:= 0
240*54fd6939SJiyong Park
241*54fd6939SJiyong Park# If the BL31 image initialisation code is recalimed after use for the secondary
242*54fd6939SJiyong Park# cores stack
243*54fd6939SJiyong ParkRECLAIM_INIT_CODE		:= 0
244*54fd6939SJiyong Park
245*54fd6939SJiyong Park# SPD choice
246*54fd6939SJiyong ParkSPD				:= none
247*54fd6939SJiyong Park
248*54fd6939SJiyong Park# Enable the Management Mode (MM)-based Secure Partition Manager implementation
249*54fd6939SJiyong ParkSPM_MM				:= 0
250*54fd6939SJiyong Park
251*54fd6939SJiyong Park# Use SPM at S-EL2 as a default config for SPMD
252*54fd6939SJiyong ParkSPMD_SPM_AT_SEL2		:= 1
253*54fd6939SJiyong Park
254*54fd6939SJiyong Park# Flag to introduce an infinite loop in BL1 just before it exits into the next
255*54fd6939SJiyong Park# image. This is meant to help debugging the post-BL2 phase.
256*54fd6939SJiyong ParkSPIN_ON_BL1_EXIT		:= 0
257*54fd6939SJiyong Park
258*54fd6939SJiyong Park# Flags to build TF with Trusted Boot support
259*54fd6939SJiyong ParkTRUSTED_BOARD_BOOT		:= 0
260*54fd6939SJiyong Park
261*54fd6939SJiyong Park# Build option to choose whether Trusted Firmware uses Coherent memory or not.
262*54fd6939SJiyong ParkUSE_COHERENT_MEM		:= 1
263*54fd6939SJiyong Park
264*54fd6939SJiyong Park# Build option to add debugfs support
265*54fd6939SJiyong ParkUSE_DEBUGFS			:= 0
266*54fd6939SJiyong Park
267*54fd6939SJiyong Park# Build option to fconf based io
268*54fd6939SJiyong ParkARM_IO_IN_DTB			:= 0
269*54fd6939SJiyong Park
270*54fd6939SJiyong Park# Build option to support SDEI through fconf
271*54fd6939SJiyong ParkSDEI_IN_FCONF			:= 0
272*54fd6939SJiyong Park
273*54fd6939SJiyong Park# Build option to support Secure Interrupt descriptors through fconf
274*54fd6939SJiyong ParkSEC_INT_DESC_IN_FCONF		:= 0
275*54fd6939SJiyong Park
276*54fd6939SJiyong Park# Build option to choose whether Trusted Firmware uses library at ROM
277*54fd6939SJiyong ParkUSE_ROMLIB			:= 0
278*54fd6939SJiyong Park
279*54fd6939SJiyong Park# Build option to choose whether the xlat tables of BL images can be read-only.
280*54fd6939SJiyong Park# Note that this only serves as a higher level option to PLAT_RO_XLAT_TABLES,
281*54fd6939SJiyong Park# which is the per BL-image option that actually enables the read-only tables
282*54fd6939SJiyong Park# API. The reason for having this additional option is to have a common high
283*54fd6939SJiyong Park# level makefile where we can check for incompatible features/build options.
284*54fd6939SJiyong ParkALLOW_RO_XLAT_TABLES		:= 0
285*54fd6939SJiyong Park
286*54fd6939SJiyong Park# Chain of trust.
287*54fd6939SJiyong ParkCOT				:= tbbr
288*54fd6939SJiyong Park
289*54fd6939SJiyong Park# Use tbbr_oid.h instead of platform_oid.h
290*54fd6939SJiyong ParkUSE_TBBR_DEFS			:= 1
291*54fd6939SJiyong Park
292*54fd6939SJiyong Park# Build verbosity
293*54fd6939SJiyong ParkV				:= 0
294*54fd6939SJiyong Park
295*54fd6939SJiyong Park# Whether to enable D-Cache early during warm boot. This is usually
296*54fd6939SJiyong Park# applicable for platforms wherein interconnect programming is not
297*54fd6939SJiyong Park# required to enable cache coherency after warm reset (eg: single cluster
298*54fd6939SJiyong Park# platforms).
299*54fd6939SJiyong ParkWARMBOOT_ENABLE_DCACHE_EARLY	:= 0
300*54fd6939SJiyong Park
301*54fd6939SJiyong Park# Build option to enable/disable the Statistical Profiling Extensions
302*54fd6939SJiyong ParkENABLE_SPE_FOR_LOWER_ELS	:= 1
303*54fd6939SJiyong Park
304*54fd6939SJiyong Park# SPE is only supported on AArch64 so disable it on AArch32.
305*54fd6939SJiyong Parkifeq (${ARCH},aarch32)
306*54fd6939SJiyong Park	override ENABLE_SPE_FOR_LOWER_ELS := 0
307*54fd6939SJiyong Parkendif
308*54fd6939SJiyong Park
309*54fd6939SJiyong Park# Include Memory Tagging Extension registers in cpu context. This must be set
310*54fd6939SJiyong Park# to 1 if the platform wants to use this feature in the Secure world and MTE is
311*54fd6939SJiyong Park# enabled at ELX.
312*54fd6939SJiyong ParkCTX_INCLUDE_MTE_REGS		:= 0
313*54fd6939SJiyong Park
314*54fd6939SJiyong ParkENABLE_AMU			:= 0
315*54fd6939SJiyong ParkENABLE_AMU_AUXILIARY_COUNTERS	:= 0
316*54fd6939SJiyong ParkENABLE_AMU_FCONF		:= 0
317*54fd6939SJiyong ParkAMU_RESTRICT_COUNTERS		:= 0
318*54fd6939SJiyong Park
319*54fd6939SJiyong Park# Enable SVE for non-secure world by default
320*54fd6939SJiyong ParkENABLE_SVE_FOR_NS		:= 1
321*54fd6939SJiyong ParkENABLE_SVE_FOR_SWD		:= 0
322*54fd6939SJiyong Park
323*54fd6939SJiyong Park# SME defaults to disabled
324*54fd6939SJiyong ParkENABLE_SME_FOR_NS		:= 0
325*54fd6939SJiyong ParkENABLE_SME_FOR_SWD		:= 0
326*54fd6939SJiyong Park
327*54fd6939SJiyong Park# If SME is enabled then force SVE off
328*54fd6939SJiyong Parkifeq (${ENABLE_SME_FOR_NS},1)
329*54fd6939SJiyong Park	override ENABLE_SVE_FOR_NS	:= 0
330*54fd6939SJiyong Park	override ENABLE_SVE_FOR_SWD	:= 0
331*54fd6939SJiyong Parkendif
332*54fd6939SJiyong Park
333*54fd6939SJiyong ParkSANITIZE_UB := off
334*54fd6939SJiyong Park
335*54fd6939SJiyong Park# For ARMv8.1 (AArch64) platforms, enabling this option selects the spinlock
336*54fd6939SJiyong Park# implementation variant using the ARMv8.1-LSE compare-and-swap instruction.
337*54fd6939SJiyong Park# Default: disabled
338*54fd6939SJiyong ParkUSE_SPINLOCK_CAS := 0
339*54fd6939SJiyong Park
340*54fd6939SJiyong Park# Enable Link Time Optimization
341*54fd6939SJiyong ParkENABLE_LTO			:= 0
342*54fd6939SJiyong Park
343*54fd6939SJiyong Park# Build flag to include EL2 registers in cpu context save and restore during
344*54fd6939SJiyong Park# S-EL2 firmware entry/exit. This flag is to be used with SPD=spmd option.
345*54fd6939SJiyong Park# Default is 0.
346*54fd6939SJiyong ParkCTX_INCLUDE_EL2_REGS		:= 0
347*54fd6939SJiyong Park
348*54fd6939SJiyong Park# Enable Memory tag extension which is supported for architecture greater
349*54fd6939SJiyong Park# than Armv8.5-A
350*54fd6939SJiyong Park# By default it is set to "no"
351*54fd6939SJiyong ParkSUPPORT_STACK_MEMTAG		:= no
352*54fd6939SJiyong Park
353*54fd6939SJiyong Park# Select workaround for AT speculative behaviour.
354*54fd6939SJiyong ParkERRATA_SPECULATIVE_AT		:= 0
355*54fd6939SJiyong Park
356*54fd6939SJiyong Park# Trap RAS error record access from lower EL
357*54fd6939SJiyong ParkRAS_TRAP_LOWER_EL_ERR_ACCESS	:= 0
358*54fd6939SJiyong Park
359*54fd6939SJiyong Park# Build option to create cot descriptors using fconf
360*54fd6939SJiyong ParkCOT_DESC_IN_DTB			:= 0
361*54fd6939SJiyong Park
362*54fd6939SJiyong Park# Build option to provide openssl directory path
363*54fd6939SJiyong ParkOPENSSL_DIR			:= /usr
364*54fd6939SJiyong Park
365*54fd6939SJiyong Park# Build option to use the SP804 timer instead of the generic one
366*54fd6939SJiyong ParkUSE_SP804_TIMER			:= 0
367*54fd6939SJiyong Park
368*54fd6939SJiyong Park# Build option to define number of firmware banks, used in firmware update
369*54fd6939SJiyong Park# metadata structure.
370*54fd6939SJiyong ParkNR_OF_FW_BANKS			:= 2
371*54fd6939SJiyong Park
372*54fd6939SJiyong Park# Build option to define number of images in firmware bank, used in firmware
373*54fd6939SJiyong Park# update metadata structure.
374*54fd6939SJiyong ParkNR_OF_IMAGES_IN_FW_BANK		:= 1
375*54fd6939SJiyong Park
376*54fd6939SJiyong Park# Disable Firmware update support by default
377*54fd6939SJiyong ParkPSA_FWU_SUPPORT			:= 0
378*54fd6939SJiyong Park
379*54fd6939SJiyong Park# By default, disable access of trace buffer control registers from NS
380*54fd6939SJiyong Park# lower ELs  i.e. NS-EL2, or NS-EL1 if NS-EL2 implemented but unused
381*54fd6939SJiyong Park# if FEAT_TRBE is implemented.
382*54fd6939SJiyong Park# Note FEAT_TRBE is only supported on AArch64 - therefore do not enable in
383*54fd6939SJiyong Park# AArch32.
384*54fd6939SJiyong Parkifneq (${ARCH},aarch32)
385*54fd6939SJiyong Park	ENABLE_TRBE_FOR_NS		:= 0
386*54fd6939SJiyong Parkelse
387*54fd6939SJiyong Park	override ENABLE_TRBE_FOR_NS	:= 0
388*54fd6939SJiyong Parkendif
389*54fd6939SJiyong Park
390*54fd6939SJiyong Park# By default, disable access of trace system registers from NS lower
391*54fd6939SJiyong Park# ELs  i.e. NS-EL2, or NS-EL1 if NS-EL2 implemented but unused if
392*54fd6939SJiyong Park# system register trace is implemented.
393*54fd6939SJiyong ParkENABLE_SYS_REG_TRACE_FOR_NS	:= 0
394*54fd6939SJiyong Park
395*54fd6939SJiyong Park# By default, disable trace filter control registers access to NS
396*54fd6939SJiyong Park# lower ELs, i.e. NS-EL2, or NS-EL1 if NS-EL2 implemented but unused
397*54fd6939SJiyong Park# if FEAT_TRF is implemented.
398*54fd6939SJiyong ParkENABLE_TRF_FOR_NS		:= 0
399