Table of Arm Architecture features vs Kernel Versions

Check out the below table of Arm architecture features against the Linux Kernel version they got merged in.

See also the new vs old Feature names in the following table.

New Feature name

Old Feature name

Kernel Version

Notes 

 

 ARMv8.1 Features

 FEAT_LSE

 ARMv8.1-LSE

4.3

Kernel atomics use and HWCAP

 FEAT_RDM

 ARMv8.1-RDMA

4.11

HWCAP

 FEAT_HPDS

 ARMv8.1-HPD

N/A

 
 FEAT_VHE

 ARMv8.1-VHE

4.6

4.17 - KVM

Virtualization Host Extensions

 FEAT_HAFDBS

 ARMv8.1-TTHM

4.3

4.7 - KVM

Access flag & Dirty Bit Management (ARM64_HW_AFDBM) 

 FEAT_PAN

 ARMv8.1-PAN

4.3

 
 FEAT_LOR

 ARMv8.1-LOR  

N/A

 
 FEAT_VMID16

 ARMv8.1-VMID16  

4.0

 
 FEAT_PMUv3p1

 ARMv8.1-PMU   

4.13

Support for 16-bit PMU event types

 

 ARMv8.2 Features

 FEAT_TTCNP

 ARMv8.2-TTCNP

4.20

Common Not Private optimization (for SMT processors like Neoverse-E1)

 FEAT_XNX

 ARMv8.2-TTS2UXN

N/A

 
 FEAT_AA32HPD

 ARMv8.2-AA32HPD

N/A 

 
 FEAT_HPDS2

 ARMv8.2-TTPBHA

N/A

 
 FEAT_UAO

 ARMv8.2-UAO

4.6

User Access Override

 FEAT_LSMAOC

 ARMv8.2-LSMAOC

N/A

 
 FEAT_PAN2

 ARMv8.2-ATS1E1

N/A

 
 FEAT_FP16

 ARMv8.2-FP16

4.6

 
 FEAT_LVA

 ARMv8.2-LVA

5.0

5.4

User-space (5.0) Kernel (5.4)

 

 FEAT_LPA

 ARMv8.2-LPA

4.16

4.20 - IPA KVM

 
 FEAT_DPB

 ARMv8.2-DCPoP

4.14

pmemDAX support in 5.4

Memory HotPlug in 5.0

Memory HotRemove in 5.7

 FEAT_VPIPT

 ARMv8.2-VPIPT

4.12

 

 FEAT_Debugv8p2

 FEAT_SPE

 ARMv8.2-Debug

  & SPE

4.14

5.3

 

SPE (Statistical Profiling Extension) - DT-based.

ACPI 6.3 support in 5.3

KVM enablement ongoing

 FEAT_PCSRv8p2

 ARMv8.2-PCSample

N/A

 
 FEAT_ASMv8p2

 ARMv8.2-A64ISA

N/A

 
 FEAT_DotProd2

 ARMv8.2-DotProd

4.15 

HWCAP

 FEAT_SHA1/SHA256

 ARMv8.0-SHA

3.14

HWCAP

 FEAT_AES

 ARMv8.0-AES

3.14

HWCAP 

 FEAT_IESB

 FEAT_RAS

 ARMv8.2-IESB

 ARMv8.2-RAS

4.16

Firmware-first RAS support (SDEI Driver, ARM64_RAS_EXTN & SCTLR_ELx_IESB)

 FEAT_FHM

 ARMv8.2-FHM

4.16

HWCAP

 FEAT_SVE

 ARMv8.2 SVE

4.15

5.2 - KVM

 

 

 ARMv8.3 Features

 FEAT_PAuth

 ARMv8.3-Pauth

5.0 - User-space

5.1 - ptrace

5.2 - KVM

5.7 - In kernel

 

 FEAT_JSCVT

 ARMv8.3-JSconv

4.12

HWCAP

 FEAT_CCIDX

 ARMv8.3-CCIDX

N/A 

 
 FEAT_NV

 ARMv8.3-NV

 

KVM enablement ongoing

 FEAT_LRCPC

 ARMv8.3-RCPC

4.12

HWCAP

 FEAT_FCMA

 ARMv8.3-CompNum

4.12

HWCAP

 

 ARMv8.4 Features

 FEAT_SEL2

 ARMv8.4-SecEL2

N/A 

 
 FEAT_NV2

 ARMv8.4-NV

 

KVM enablement ongoing

 FEAT_S2FWB

 ARMv8.4-S2FWB

4.19

 
 FEAT_LSE2

 ARMv8.4-LSE

4.17

HWCAP

 FEAT_TTST

 ARMv8.4-TTST

N/A 

 
 FEAT_TTL

 ARMv8.4-TTL

 5.9

Queued

 FEAT_SHA3/SHA512

 ARMv8.2-SHA

4.15

HWCAP

 FEAT_SM3/SM4

 ARMv8.2-SM

4.15

HWCAP

 FEAT_DIT

 ARMv8.4-DIT 

4.17

HWCAP

 FEAT_IDST

 ARMv8.4-IDST

4.20

 
 FEAT_FlagM

 ARMv8.4-CondM

4.17

HWCAP

 FEAT_LRCPC2

 ARMv8.4-RCPC

4.17

HWCAP

 FEAT_TLBIRANGE

 ARMv8.4-TLBI

 5.9

Queued

 FEAT_BBM

 ARMv8.4-TTRem 

 N/A

 

 FEAT_CNTSC

 ARMv8.4-CNTSC

 N/A

 

 FEAT_Debugv8p4

 ARMv8.4-Debug & Trace

 

Ongoing 

 FEAT_PMUv3p4

 ARMv8.4-PMU

 

Expose PMMIR_EL1.SLOTS to userspace under sysfs

 FEAT_MPAM

 ARMv8.4 MPAM


Memory Partitioning and Monitoring enablement ongoing

 FEAT_AMUv1

 ARMv8.4 AMU

5.7

 Activitiy Monitors extensions

 FEAT_RASv1p1  ARMv8.4-RAS

 N/A

 
 

 ARMv8.5 Features

 FEAT_SPECRES

 ARMv8.0-SpecRest

5.2

 sysfs exposure in 5.2. SCXTNUM_EL[0/1] TBD

 FEAT_SB

 ARMv8.0-SB

5.0

 New Speculation Barrier enabled

 FEAT_SSBS

 ARMv8.0-SSBS

4.20

 

 FEAT_SPECRES

 ARMv8.0-PredInv

 

 Execution and Data prediction restriction instructions enablement

 FEAT_MTE

 ARMv8.5-MemTag

 

 Memory Tagging enablement ongoing

 FEAT_BTI

 ARMv8.5-BTI

 5.8

 Branch Target Identification enablement.

 User-space & Kernel support

 FEAT_DPB2

 ARMv8.2-DCCVADP

5.2

 
 FEAT_FlagM2

 ARMv8.5-CondM

5.3

 HWCAP

 FEAT_FRINTTS

 ARMv8.5-FRINT

5.3

 HWCAP

 FEAT_GTG

 ARMv8.5-GTG

 

 Ongoing

 FEAT_EVT

 ARMv8.2-EVT

 N/A

 

 FEAT_ExS

 ARMv8.5-CSEH

 N/A

 

 

 ARMv8.5-CMODX

 N/A

 

 FEAT_RNG

 ARMv8.5-RNG

5.6

5.7

5.6: HWCAP exposure & use arch entropy for KASLR seed

5.7: use at boot to seed KASLR when ARCH_RANDOM=y

 FEAT_E0PD

 ARMv8.5-E0PD

5.6

 Preventing EL0 access to halves of address maps

 FEAT_PMUv3p5

 ARMv8.5-PMU

5.7

 64-bit PMU counters

 FEAT_SPEv1p1

 ARMv8.3-SPE

 

 Ongoing

 FEAT_DoPD

 ARMv8.3-DoPD

 N/A

 Debug over Powerdown

 

 ARMv8.6 Features

 FEAT_BF16

 ARMv8.2-BF16

5.6

 HWCAP - BFloat16 extension

 FEAT_I8MM

 ARMv8.2-I8MM

5.6

 Int8 Matrix Multiplication extension - HWCAP

 FEAT_F32MM

 ARMv8.2-F32MM

5.6

 HWCAP - Single-precision Matric Multiplication

 FEAT_F64MM

 ARMv8.2-F64MM

5.6

 HWCAP - Double-precision Matric Multiplication extension

 FEAT_DGH

 ARMv8.0-DGH

5.6

 Data Gathering Hint - HWCAP

 FEAT_ETS

 ARMv8.0-ETS

 N/A

 Enhanced Translation Synchronisation

 FEAT_PAuth2

 ARMv8.3-PAuth2

 N/A

 

 FEAT_FPAC

 ARMv8.3-FPAC

 

 Ongoing

 FEAT_ECV

 ARMv8.6-ECV

 N/A

 

 FEAT_FGT

 ARMv8.6-FGT

 N/A

 

 FEAT_TWED

 ARMv8.6-TWED

 N/A

 

 FEAT_AMUv1p1

 ARMv8.6-AMU

 N/A

 

 FEAT_MPAMv0p1

FEAT_MPAMv1p1

 ARMv8.6-MPAM

 

 TBD

 FEAT_MTPMU

 ARMv8.6-MTPMU

 

 TBD