1Architecture Features 2===================== 3 4The Arm architecture evolves through versioning, with new architectural features being introduced 5almost every year listed in `Feature_description`_. While most of these features require no control at EL3, some demand explicit 6configuration of EL3 control registers to enable their use at lower Exception Levels. For features 7with EL3 controls, it is relatively straightforward to examine the code and determine whether TF-A 8supports them. However, for features that are transparent to EL3, it is more challenging to confirm 9whether they have been analyzed and verified as not requiring changes in TF-A. 10 11This document serves as a central reference point to track and clarify the support status of 12architectural features within TF-A. 13 14This document organizes features according to the yearly updates, while the specific architecture 15versions (8.X, 9.X) to which they apply can be found in `Feature_description`_ 16 17.. note:: 18 19 **Status legend** — 20 21 * ``OK``: TF-A has explicit support; 22 * ``NA``: Transparent from EL3 (no EL3 changes required); 23 * ``NO``: Analyzed but decided not to implement; 24 * ``WIP``: Implementation in progress; 25 * *(empty)*: Not analyzed. 26 272025 Extensions 28--------------- 29 30+-------------------------+--------+ 31| Feature | Status | 32+=========================+========+ 33| FEAT_GCIE | | 34+-------------------------+--------+ 35| FEAT_GCIE_LEGACY | | 36+-------------------------+--------+ 37| FEAT_F16F32DOT | | 38+-------------------------+--------+ 39| FEAT_F16F32MM | | 40+-------------------------+--------+ 41| FEAT_F16MM | | 42+-------------------------+--------+ 43| FEAT_SVE_B16MM | | 44+-------------------------+--------+ 45| FEAT_SME2p3 | | 46+-------------------------+--------+ 47| FEAT_MTE_EIRG | NA | 48+-------------------------+--------+ 49| FEAT_MTETC | | 50+-------------------------+--------+ 51| FEAT_SVE2p3 | | 52+-------------------------+--------+ 53| FEAT_SCR2 | | 54+-------------------------+--------+ 55| FEAT_LSCP | | 56+-------------------------+--------+ 57| FEAT_MPAMv2_VID | | 58+-------------------------+--------+ 59| FEAT_MPAMv2_MSC | | 60+-------------------------+--------+ 61| FEAT_MPAMv2_MSC_MON_SEC | | 62+-------------------------+--------+ 63| FEAT_MPAMv2_ALT_ID | | 64+-------------------------+--------+ 65| FEAT_MPAMv2 | | 66+-------------------------+--------+ 67| FEAT_FDIT | | 68+-------------------------+--------+ 69| FEAT_CMH | | 70+-------------------------+--------+ 71| FEAT_EAESR | | 72+-------------------------+--------+ 73| FEAT_TLBID | | 74+-------------------------+--------+ 75| FEAT_SRMASK2 | | 76+-------------------------+--------+ 77| FEAT_BBML3 | | 78+-------------------------+--------+ 79| FEAT_NV3 | | 80+-------------------------+--------+ 81| FEAT_PAuth_EnhCtl | | 82+-------------------------+--------+ 83| FEAT_LORRL | | 84+-------------------------+--------+ 85 862024 Extensions 87--------------- 88 89+-----------------------+--------+ 90| Feature | Status | 91+=======================+========+ 92| FEAT_PMUv3_EXTPMN | | 93+-----------------------+--------+ 94| FEAT_SPEv1p5 | | 95+-----------------------+--------+ 96| FEAT_SPE_EXC | | 97+-----------------------+--------+ 98| FEAT_SPE_nVM | | 99+-----------------------+--------+ 100| FEAT_TRBEv1p1 | | 101+-----------------------+--------+ 102| FEAT_TRBE_EXC | | 103+-----------------------+--------+ 104| FEAT_SME_MOP4 | | 105+-----------------------+--------+ 106| FEAT_SME_TMOP | | 107+-----------------------+--------+ 108| FEAT_PoPS | | 109+-----------------------+--------+ 110| FEAT_SME2p2 | | 111+-----------------------+--------+ 112| FEAT_CMPBR | | 113+-----------------------+--------+ 114| FEAT_SSVE_AES | | 115+-----------------------+--------+ 116| FEAT_RME_GPC3 | WIP | 117+-----------------------+--------+ 118| FEAT_RME_GDI | WIP | 119+-----------------------+--------+ 120| FEAT_SVE2p2 | | 121+-----------------------+--------+ 122| FEAT_SSVE_BitPerm | | 123+-----------------------+--------+ 124| FEAT_SSVE_FEXPA | | 125+-----------------------+--------+ 126| FEAT_SVE_AES2 | | 127+-----------------------+--------+ 128| FEAT_LSFE | | 129+-----------------------+--------+ 130| FEAT_FPRCVT | | 131+-----------------------+--------+ 132| FEAT_SVE_F16F32MM | | 133+-----------------------+--------+ 134| FEAT_F8F16MM | | 135+-----------------------+--------+ 136| FEAT_F8F32MM | | 137+-----------------------+--------+ 138| FEAT_SVE_BFSCALE | | 139+-----------------------+--------+ 140| FEAT_OCCMO | | 141+-----------------------+--------+ 142| FEAT_LS64WB | | 143+-----------------------+--------+ 144| FEAT_AMU_EXTACR | | 145+-----------------------+--------+ 146| FEAT_MPAM_MSC_DOMAINS | | 147+-----------------------+--------+ 148| FEAT_MPAM_MSC_DCTRL | | 149+-----------------------+--------+ 150| FEAT_MPAM_PE_BW_CTRL | OK | 151+-----------------------+--------+ 152| FEAT_PCDPHINT | | 153+-----------------------+--------+ 154| FEAT_SRMASK | | 155+-----------------------+--------+ 156| FEAT_IDTE3 | WIP | 157+-----------------------+--------+ 158| FEAT_UINJ | WIP | 159+-----------------------+--------+ 160| FEAT_NV2p1 | | 161+-----------------------+--------+ 162| FEAT_LSUI | | 163+-----------------------+--------+ 164 1652023 Extensions 166--------------- 167 168+-------------------+--------+ 169| Feature | Status | 170+===================+========+ 171| FEAT_E2H0 | NA | 172+-------------------+--------+ 173| FEAT_SME_LUTv2 | NA | 174+-------------------+--------+ 175| FEAT_LUT | NA | 176+-------------------+--------+ 177| FEAT_FAMINMAX | NA | 178+-------------------+--------+ 179| FEAT_FPMR | OK | 180+-------------------+--------+ 181| FEAT_FP8 | NA | 182+-------------------+--------+ 183| FEAT_FP8FMA | NA | 184+-------------------+--------+ 185| FEAT_SSVE_FP8FMA | NA | 186+-------------------+--------+ 187| FEAT_FP8DOT4 | NA | 188+-------------------+--------+ 189| FEAT_SSVE_FP8DOT4 | NA | 190+-------------------+--------+ 191| FEAT_FP8DOT2 | NA | 192+-------------------+--------+ 193| FEAT_SSVE_FP8DOT2 | NA | 194+-------------------+--------+ 195| FEAT_SME_F8F16 | NA | 196+-------------------+--------+ 197| FEAT_SME_F8F32 | NA | 198+-------------------+--------+ 199| FEAT_CPA | NA | 200+-------------------+--------+ 201| FEAT_CPA2 | OK | 202+-------------------+--------+ 203| FEAT_STEP2 | | 204+-------------------+--------+ 205| FEAT_BWE2 | NA | 206+-------------------+--------+ 207| FEAT_SPE_FPF | NA | 208+-------------------+--------+ 209| FEAT_SPE_EFT | NA | 210+-------------------+--------+ 211| FEAT_PMUv3_TH2 | NA | 212+-------------------+--------+ 213| FEAT_SPMU2 | NA | 214+-------------------+--------+ 215| FEAT_E3DSE | | 216+-------------------+--------+ 217| FEAT_PMUv3_SME | NA | 218+-------------------+--------+ 219| FEAT_SPE_SME | NA | 220+-------------------+--------+ 221| FEAT_SPE_ALTCLK | NA | 222+-------------------+--------+ 223| FEAT_HDBSS | | 224+-------------------+--------+ 225| FEAT_HACDBS | | 226+-------------------+--------+ 227| FEAT_TLBIW | NA | 228+-------------------+--------+ 229| FEAT_ASID2 | NA | 230+-------------------+--------+ 231| FEAT_RME_GPC2 | WIP | 232+-------------------+--------+ 233| FEAT_FGWTE3 | OK | 234+-------------------+--------+ 235| FEAT_PAuth_LR | OK | 236+-------------------+--------+ 237| FEAT_ETS3 | NA | 238+-------------------+--------+ 239 2402022 Extensions 241--------------- 242 243+--------------------------+--------+ 244| Feature | Status | 245+==========================+========+ 246| FEAT_BWE | | 247+--------------------------+--------+ 248| FEAT_ADERR | | 249+--------------------------+--------+ 250| FEAT_ANERR | | 251+--------------------------+--------+ 252| FEAT_DoubleFault2 | | 253+--------------------------+--------+ 254| FEAT_PFAR | OK | 255+--------------------------+--------+ 256| FEAT_RASv2 | | 257+--------------------------+--------+ 258| FEAT_CSSC | | 259+--------------------------+--------+ 260| FEAT_RPRFM | | 261+--------------------------+--------+ 262| FEAT_PRFMSLC | | 263+--------------------------+--------+ 264| FEAT_SPECRES2 | | 265+--------------------------+--------+ 266| FEAT_CLRBHB | | 267+--------------------------+--------+ 268| FEAT_ECBHB | NA | 269+--------------------------+--------+ 270| FEAT_SME2p1 | | 271+--------------------------+--------+ 272| FEAT_SME_F16F16 | | 273+--------------------------+--------+ 274| FEAT_SVE_B16B16 | | 275+--------------------------+--------+ 276| FEAT_SME_B16B16 | | 277+--------------------------+--------+ 278| FEAT_FGT2 | OK | 279+--------------------------+--------+ 280| FEAT_MTE4 | NA | 281+--------------------------+--------+ 282| FEAT_MTE_CANONICAL_TAGS | NA | 283+--------------------------+--------+ 284| FEAT_MTE_NO_ADDRESS_TAGS | NA | 285+--------------------------+--------+ 286| FEAT_MTE_TAGGED_FAR | | 287+--------------------------+--------+ 288| FEAT_MTE_PERM | NA | 289+--------------------------+--------+ 290| FEAT_MTE_STORE_ONLY | NA | 291+--------------------------+--------+ 292| FEAT_ITE | | 293+--------------------------+--------+ 294| FEAT_TRBE_EXT | | 295+--------------------------+--------+ 296| FEAT_TRBE_MPAM | | 297+--------------------------+--------+ 298| FEAT_ETEv1p3 | | 299+--------------------------+--------+ 300| FEAT_GCS | OK | 301+--------------------------+--------+ 302| FEAT_CHK | | 303+--------------------------+--------+ 304| FEAT_SPE_DPFZS | | 305+--------------------------+--------+ 306| FEAT_SPE_CRR | | 307+--------------------------+--------+ 308| FEAT_EBEP | WIP | 309+--------------------------+--------+ 310| FEAT_SEBEP | OK | 311+--------------------------+--------+ 312| FEAT_PMUv3_SS | | 313+--------------------------+--------+ 314| FEAT_SPMU | | 315+--------------------------+--------+ 316| FEAT_PMUv3_ICNTR | | 317+--------------------------+--------+ 318| FEAT_PMUv3p9 | | 319+--------------------------+--------+ 320| FEAT_SVE2p1 | | 321+--------------------------+--------+ 322| FEAT_Debugv8p9 | OK | 323+--------------------------+--------+ 324| FEAT_ABLE | | 325+--------------------------+--------+ 326| FEAT_PCSRv8p9 | | 327+--------------------------+--------+ 328| FEAT_LRCPC3 | | 329+--------------------------+--------+ 330| FEAT_SPEv1p4 | | 331+--------------------------+--------+ 332| FEAT_SPE_FDS | | 333+--------------------------+--------+ 334| FEAT_PMUv3_EDGE | | 335+--------------------------+--------+ 336| FEAT_D128 | OK | 337+--------------------------+--------+ 338| FEAT_AIE | OK | 339+--------------------------+--------+ 340| FEAT_S1PIE | OK | 341+--------------------------+--------+ 342| FEAT_ATS1A | | 343+--------------------------+--------+ 344| FEAT_S1POE | OK | 345+--------------------------+--------+ 346| FEAT_S2PIE | OK | 347+--------------------------+--------+ 348| FEAT_S2POE | OK | 349+--------------------------+--------+ 350| FEAT_SYSREG128 | OK | 351+--------------------------+--------+ 352| FEAT_SYSINSTR128 | | 353+--------------------------+--------+ 354| FEAT_LSE128 | | 355+--------------------------+--------+ 356| FEAT_HAFT | | 357+--------------------------+--------+ 358| FEAT_THE | OK | 359+--------------------------+--------+ 360| FEAT_LVA3 | | 361+--------------------------+--------+ 362| FEAT_MTE_ASYNC | | 363+--------------------------+--------+ 364| FEAT_EDHSR | | 365+--------------------------+--------+ 366| FEAT_AMU_EXT64 | | 367+--------------------------+--------+ 368 369 3702021 Extensions 371--------------- 372 373+------------------+--------+ 374| Feature | Status | 375+==================+========+ 376| FEAT_SME2 | OK | 377+------------------+--------+ 378| FEAT_MEC | OK | 379+------------------+--------+ 380| FEAT_BRBEv1p1 | WIP | 381+------------------+--------+ 382| FEAT_CMOW | NA | 383+------------------+--------+ 384| FEAT_Debugv8p8 | NA | 385+------------------+--------+ 386| FEAT_HBC | NA | 387+------------------+--------+ 388| FEAT_MOPS | OK | 389+------------------+--------+ 390| FEAT_NMI | OK | 391+------------------+--------+ 392| FEAT_SPEv1p3 | NA | 393+------------------+--------+ 394| FEAT_TIDCP1 | NA | 395+------------------+--------+ 396| FEAT_PMUv3_TH | NA | 397+------------------+--------+ 398| FEAT_PMUv3p8 | NA | 399+------------------+--------+ 400| FEAT_SCTLR2 | OK | 401+------------------+--------+ 402| FEAT_TCR2 | OK | 403+------------------+--------+ 404| FEAT_PMUv3_EXT64 | NA | 405+------------------+--------+ 406 407 4082020 Extensions 409--------------- 410 411+---------------------+--------+ 412| Feature | Status | 413+=====================+========+ 414| FEAT_EBF16 | NA | 415+---------------------+--------+ 416| FEAT_ETEv1p1 | NA | 417+---------------------+--------+ 418| FEAT_HCX | OK | 419+---------------------+--------+ 420| FEAT_PAN3 | OK | 421+---------------------+--------+ 422| FEAT_WFxT | NA | 423+---------------------+--------+ 424| FEAT_XS | NO | 425+---------------------+--------+ 426| FEAT_AFP | NA | 427+---------------------+--------+ 428| FEAT_RPRES | NA | 429+---------------------+--------+ 430| FEAT_LPA2 | NO | 431+---------------------+--------+ 432| FEAT_LS64 | NA | 433+---------------------+--------+ 434| FEAT_LS64_V | NA | 435+---------------------+--------+ 436| FEAT_LS64_ACCDATA | OK | 437+---------------------+--------+ 438| FEAT_MTE3 | NA | 439+---------------------+--------+ 440| FEAT_MTE_ASYM_FAULT | NA | 441+---------------------+--------+ 442| FEAT_SPEv1p2 | OK | 443+---------------------+--------+ 444| FEAT_SPE_FnE | NA | 445+---------------------+--------+ 446| FEAT_SPE_PBT | OK | 447+---------------------+--------+ 448| FEAT_PMUv3p7 | OK | 449+---------------------+--------+ 450 451.. _Feature_description: https://developer.arm.com/documentation/109697/latest/ 452