blob: f20e08ac85aeb975e28e8dc29fb7f59737a5e578 [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001/* SPDX-License-Identifier: GPL-2.0 */
Rabin Vincentd82227c2012-02-18 17:50:06 +01002#ifndef __ASM_ARM_INSN_H
3#define __ASM_ARM_INSN_H
4
Rabin Vincent09f05d82012-02-18 17:52:41 +01005static inline unsigned long
6arm_gen_nop(void)
7{
8#ifdef CONFIG_THUMB2_KERNEL
9 return 0xf3af8000; /* nop.w */
10#else
11 return 0xe1a00000; /* mov r0, r0 */
12#endif
13}
14
Rabin Vincentd82227c2012-02-18 17:50:06 +010015unsigned long
16__arm_gen_branch(unsigned long pc, unsigned long addr, bool link);
17
18static inline unsigned long
19arm_gen_branch(unsigned long pc, unsigned long addr)
20{
21 return __arm_gen_branch(pc, addr, false);
22}
23
24static inline unsigned long
25arm_gen_branch_link(unsigned long pc, unsigned long addr)
26{
27 return __arm_gen_branch(pc, addr, true);
28}
29
30#endif