1b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */ 2a99eae54SPaul Mundt #ifndef __ASM_SH_ALIGNMENT_H 3a99eae54SPaul Mundt #define __ASM_SH_ALIGNMENT_H 4a99eae54SPaul Mundt 5a99eae54SPaul Mundt #include <linux/types.h> 6a99eae54SPaul Mundt 7a99eae54SPaul Mundt extern void inc_unaligned_byte_access(void); 8a99eae54SPaul Mundt extern void inc_unaligned_word_access(void); 9a99eae54SPaul Mundt extern void inc_unaligned_dword_access(void); 10a99eae54SPaul Mundt extern void inc_unaligned_multi_access(void); 11a99eae54SPaul Mundt extern void inc_unaligned_user_access(void); 12a99eae54SPaul Mundt extern void inc_unaligned_kernel_access(void); 13a99eae54SPaul Mundt 14a99eae54SPaul Mundt #define UM_WARN (1 << 0) 15a99eae54SPaul Mundt #define UM_FIXUP (1 << 1) 16a99eae54SPaul Mundt #define UM_SIGNAL (1 << 2) 17a99eae54SPaul Mundt 18a99eae54SPaul Mundt extern unsigned int unaligned_user_action(void); 19a99eae54SPaul Mundt 20a99eae54SPaul Mundt extern void unaligned_fixups_notify(struct task_struct *, insn_size_t, struct pt_regs *); 21a99eae54SPaul Mundt 22a99eae54SPaul Mundt #endif /* __ASM_SH_ALIGNMENT_H */ 23