1*91f16700SchasingluluInternal Build Options 2*91f16700Schasinglulu====================== 3*91f16700Schasinglulu 4*91f16700Schasinglulu|TF-A| internally uses certain options that are not exposed directly through 5*91f16700Schasinglulu:ref:`build-options <build options>` but enabled or disabled indirectly and 6*91f16700Schasingluludepends on certain options to be enabled or disabled. 7*91f16700Schasinglulu 8*91f16700Schasinglulu.. _build_options_internal: 9*91f16700Schasinglulu 10*91f16700Schasinglulu- ``CTX_INCLUDE_EL2_REGS``: This boolean option provides context save/restore 11*91f16700Schasinglulu operations when entering/exiting an EL2 execution context. This is of primary 12*91f16700Schasinglulu interest when Armv8.4-SecEL2 or RME extension is implemented. 13*91f16700Schasinglulu Default is 0 (disabled). This option will be set to 1 (enabled) when ``SPD=spmd`` 14*91f16700Schasinglulu and ``SPMD_SPM_AT_SEL2`` is set or when ``ENABLE_RME`` is set to 1 (enabled). 15*91f16700Schasinglulu 16*91f16700Schasinglulu- ``FFH_SUPPORT``: This boolean option provides support to enable Firmware First 17*91f16700Schasinglulu handling (FFH) of External aborts and SError interrupts originating from lower 18*91f16700Schasinglulu ELs which gets trapped in EL3. This option will be set to 1 (enabled) if 19*91f16700Schasinglulu ``HANDLE_EA_EL3_FIRST_NS`` is set. Currently only NS world routes EA to EL3 but 20*91f16700Schasinglulu in future when Secure/Realm wants to use FFH then they can introduce new macros 21*91f16700Schasinglulu which will enable this option implicitly. 22