1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2#ifndef _UAPI__ASMARM_HWCAP_H
3#define _UAPI__ASMARM_HWCAP_H
4
5/*
6 * HWCAP flags - for elf_hwcap (in kernel) and AT_HWCAP
7 */
8#define HWCAP_SWP	(1 << 0)
9#define HWCAP_HALF	(1 << 1)
10#define HWCAP_THUMB	(1 << 2)
11#define HWCAP_26BIT	(1 << 3)	/* Play it safe */
12#define HWCAP_FAST_MULT	(1 << 4)
13#define HWCAP_FPA	(1 << 5)
14#define HWCAP_VFP	(1 << 6)
15#define HWCAP_EDSP	(1 << 7)
16#define HWCAP_JAVA	(1 << 8)
17#define HWCAP_IWMMXT	(1 << 9)
18#define HWCAP_CRUNCH	(1 << 10)	/* Obsolete */
19#define HWCAP_THUMBEE	(1 << 11)
20#define HWCAP_NEON	(1 << 12)
21#define HWCAP_VFPv3	(1 << 13)
22#define HWCAP_VFPv3D16	(1 << 14)	/* also set for VFPv4-D16 */
23#define HWCAP_TLS	(1 << 15)
24#define HWCAP_VFPv4	(1 << 16)
25#define HWCAP_IDIVA	(1 << 17)
26#define HWCAP_IDIVT	(1 << 18)
27#define HWCAP_VFPD32	(1 << 19)	/* set if VFP has 32 regs (not 16) */
28#define HWCAP_IDIV	(HWCAP_IDIVA | HWCAP_IDIVT)
29#define HWCAP_LPAE	(1 << 20)
30#define HWCAP_EVTSTRM	(1 << 21)
31#define HWCAP_FPHP	(1 << 22)
32#define HWCAP_ASIMDHP	(1 << 23)
33#define HWCAP_ASIMDDP	(1 << 24)
34#define HWCAP_ASIMDFHM	(1 << 25)
35#define HWCAP_ASIMDBF16	(1 << 26)
36#define HWCAP_I8MM	(1 << 27)
37
38/*
39 * HWCAP2 flags - for elf_hwcap2 (in kernel) and AT_HWCAP2
40 */
41#define HWCAP2_AES	(1 << 0)
42#define HWCAP2_PMULL	(1 << 1)
43#define HWCAP2_SHA1	(1 << 2)
44#define HWCAP2_SHA2	(1 << 3)
45#define HWCAP2_CRC32	(1 << 4)
46#define HWCAP2_SB	(1 << 5)
47#define HWCAP2_SSBS	(1 << 6)
48
49#endif /* _UAPI__ASMARM_HWCAP_H */
50