Linux 6.7-rc7
[linux-modified.git] / arch / arm64 / include / asm / insn-def.h
1 /* SPDX-License-Identifier: GPL-2.0-only */
2
3 #ifndef __ASM_INSN_DEF_H
4 #define __ASM_INSN_DEF_H
5
6 #include <asm/brk-imm.h>
7
8 /* A64 instructions are always 32 bits. */
9 #define AARCH64_INSN_SIZE               4
10
11 /*
12  * BRK instruction encoding
13  * The #imm16 value should be placed at bits[20:5] within BRK ins
14  */
15 #define AARCH64_BREAK_MON       0xd4200000
16
17 /*
18  * BRK instruction for provoking a fault on purpose
19  * Unlike kgdb, #imm16 value with unallocated handler is used for faulting.
20  */
21 #define AARCH64_BREAK_FAULT     (AARCH64_BREAK_MON | (FAULT_BRK_IMM << 5))
22
23 #endif /* __ASM_INSN_DEF_H */