xref: /aosp_15_r20/bionic/libc/kernel/uapi/asm-riscv/asm/hwprobe.h (revision 8d67ca893c1523eb926b9080dbe4e2ffd2a27ba1)
1*8d67ca89SAndroid Build Coastguard Worker /*
2*8d67ca89SAndroid Build Coastguard Worker  * This file is auto-generated. Modifications will be lost.
3*8d67ca89SAndroid Build Coastguard Worker  *
4*8d67ca89SAndroid Build Coastguard Worker  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5*8d67ca89SAndroid Build Coastguard Worker  * for more information.
6*8d67ca89SAndroid Build Coastguard Worker  */
7*8d67ca89SAndroid Build Coastguard Worker #ifndef _UAPI_ASM_HWPROBE_H
8*8d67ca89SAndroid Build Coastguard Worker #define _UAPI_ASM_HWPROBE_H
9*8d67ca89SAndroid Build Coastguard Worker #include <linux/types.h>
10*8d67ca89SAndroid Build Coastguard Worker struct riscv_hwprobe {
11*8d67ca89SAndroid Build Coastguard Worker   __s64 key;
12*8d67ca89SAndroid Build Coastguard Worker   __u64 value;
13*8d67ca89SAndroid Build Coastguard Worker };
14*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_KEY_MVENDORID 0
15*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_KEY_MARCHID 1
16*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_KEY_MIMPID 2
17*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_KEY_BASE_BEHAVIOR 3
18*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_BASE_BEHAVIOR_IMA (1 << 0)
19*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_KEY_IMA_EXT_0 4
20*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_IMA_FD (1 << 0)
21*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_IMA_C (1 << 1)
22*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_IMA_V (1 << 2)
23*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZBA (1 << 3)
24*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZBB (1 << 4)
25*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZBS (1 << 5)
26*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZICBOZ (1 << 6)
27*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZBC (1 << 7)
28*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZBKB (1 << 8)
29*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZBKC (1 << 9)
30*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZBKX (1 << 10)
31*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZKND (1 << 11)
32*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZKNE (1 << 12)
33*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZKNH (1 << 13)
34*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZKSED (1 << 14)
35*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZKSH (1 << 15)
36*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZKT (1 << 16)
37*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZVBB (1 << 17)
38*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZVBC (1 << 18)
39*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZVKB (1 << 19)
40*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZVKG (1 << 20)
41*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZVKNED (1 << 21)
42*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZVKNHA (1 << 22)
43*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZVKNHB (1 << 23)
44*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZVKSED (1 << 24)
45*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZVKSH (1 << 25)
46*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZVKT (1 << 26)
47*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZFH (1 << 27)
48*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZFHMIN (1 << 28)
49*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZIHINTNTL (1 << 29)
50*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZVFH (1 << 30)
51*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZVFHMIN (1ULL << 31)
52*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZFA (1ULL << 32)
53*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZTSO (1ULL << 33)
54*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZACAS (1ULL << 34)
55*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZICOND (1ULL << 35)
56*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZIHINTPAUSE (1ULL << 36)
57*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZVE32X (1ULL << 37)
58*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZVE32F (1ULL << 38)
59*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZVE64X (1ULL << 39)
60*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZVE64F (1ULL << 40)
61*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZVE64D (1ULL << 41)
62*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZIMOP (1ULL << 42)
63*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZCA (1ULL << 43)
64*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZCB (1ULL << 44)
65*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZCD (1ULL << 45)
66*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZCF (1ULL << 46)
67*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZCMOP (1ULL << 47)
68*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_EXT_ZAWRS (1ULL << 48)
69*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_KEY_CPUPERF_0 5
70*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_MISALIGNED_UNKNOWN (0 << 0)
71*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_MISALIGNED_EMULATED (1 << 0)
72*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_MISALIGNED_SLOW (2 << 0)
73*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_MISALIGNED_FAST (3 << 0)
74*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_MISALIGNED_UNSUPPORTED (4 << 0)
75*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_MISALIGNED_MASK (7 << 0)
76*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_KEY_ZICBOZ_BLOCK_SIZE 6
77*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_KEY_HIGHEST_VIRT_ADDRESS 7
78*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_KEY_TIME_CSR_FREQ 8
79*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_KEY_MISALIGNED_SCALAR_PERF 9
80*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_MISALIGNED_SCALAR_UNKNOWN 0
81*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_MISALIGNED_SCALAR_EMULATED 1
82*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_MISALIGNED_SCALAR_SLOW 2
83*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_MISALIGNED_SCALAR_FAST 3
84*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_MISALIGNED_SCALAR_UNSUPPORTED 4
85*8d67ca89SAndroid Build Coastguard Worker #define RISCV_HWPROBE_WHICH_CPUS (1 << 0)
86*8d67ca89SAndroid Build Coastguard Worker #endif
87