1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __ASM_PROTOTYPES_H
3 #define __ASM_PROTOTYPES_H
4 /*
5  * CONFIG_MODVERSIONS requires a C declaration to generate the appropriate CRC
6  * for each symbol. Since commit:
7  *
8  *   4efca4ed05cbdfd1 ("kbuild: modversions for EXPORT_SYMBOL() for asm")
9  *
10  * ... kbuild will automatically pick these up from <asm/asm-prototypes.h> and
11  * feed this to genksyms when building assembly files.
12  */
13 #include <linux/arm-smccc.h>
14 
15 #include <asm/ftrace.h>
16 #include <asm/page.h>
17 #include <asm/string.h>
18 #include <asm/uaccess.h>
19 
20 #include <asm-generic/asm-prototypes.h>
21 
22 long long __ashlti3(long long a, int b);
23 long long __ashrti3(long long a, int b);
24 long long __lshrti3(long long a, int b);
25 
26 /*
27  * This function uses a custom calling convention and cannot be called from C so
28  * this prototype is not entirely accurate.
29  */
30 void __hwasan_tag_mismatch(unsigned long addr, unsigned long access_info);
31 
32 #endif /* __ASM_PROTOTYPES_H */
33