1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef __ASM_ARM_INSN_H 3 #define __ASM_ARM_INSN_H 4 5 static inline unsigned long 6 arm_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 15 unsigned long 16 __arm_gen_branch(unsigned long pc, unsigned long addr, bool link, bool warn); 17 18 static inline unsigned long 19 arm_gen_branch(unsigned long pc, unsigned long addr) 20 { 21 return __arm_gen_branch(pc, addr, false, true); 22 } 23 24 static inline unsigned long 25 arm_gen_branch_link(unsigned long pc, unsigned long addr, bool warn) 26 { 27 return __arm_gen_branch(pc, addr, true, warn); 28 } 29 30 #endif 31