blob: 917626128a1da7d326f6816ae63c1495a0290bc3 [file] [log] [blame]
Catalin Marinasf884b1c2007-07-12 16:10:22 +01001#ifndef __ASMARM_HWCAP_H
2#define __ASMARM_HWCAP_H
3
4/*
5 * HWCAP flags - for elf_hwcap (in kernel) and AT_HWCAP
6 */
Will Deacon194a7f72011-06-03 14:09:37 +01007#define HWCAP_SWP (1 << 0)
8#define HWCAP_HALF (1 << 1)
9#define HWCAP_THUMB (1 << 2)
10#define HWCAP_26BIT (1 << 3) /* Play it safe */
11#define HWCAP_FAST_MULT (1 << 4)
12#define HWCAP_FPA (1 << 5)
13#define HWCAP_VFP (1 << 6)
14#define HWCAP_EDSP (1 << 7)
15#define HWCAP_JAVA (1 << 8)
16#define HWCAP_IWMMXT (1 << 9)
17#define HWCAP_CRUNCH (1 << 10)
18#define HWCAP_THUMBEE (1 << 11)
19#define HWCAP_NEON (1 << 12)
20#define HWCAP_VFPv3 (1 << 13)
21#define HWCAP_VFPv3D16 (1 << 14)
22#define HWCAP_TLS (1 << 15)
Will Deacon254cdf82011-06-03 14:15:22 +010023#define HWCAP_VFPv4 (1 << 16)
24#define HWCAP_IDIVA (1 << 17)
25#define HWCAP_IDIVT (1 << 18)
26#define HWCAP_IDIV (HWCAP_IDIVA | HWCAP_IDIVT)
Catalin Marinasf884b1c2007-07-12 16:10:22 +010027
David Howells1632b9e2011-12-13 15:07:49 +000028#if defined(__KERNEL__)
29#if !defined(__ASSEMBLY__)
Catalin Marinasf884b1c2007-07-12 16:10:22 +010030/*
31 * This yields a mask that user programs can use to figure out what
32 * instruction set this cpu supports.
33 */
34#define ELF_HWCAP (elf_hwcap)
35extern unsigned int elf_hwcap;
36#endif
David Howells1632b9e2011-12-13 15:07:49 +000037#endif
Catalin Marinasf884b1c2007-07-12 16:10:22 +010038
39#endif