GNU Linux-libre 4.14.259-gnu1
[releases.git] / arch / frv / kernel / frv_ksyms.c
1 // SPDX-License-Identifier: GPL-2.0
2 #include <linux/module.h>
3 #include <linux/linkage.h>
4 #include <linux/sched.h>
5 #include <linux/string.h>
6 #include <linux/mm.h>
7 #include <linux/user.h>
8 #include <linux/elfcore.h>
9 #include <linux/in6.h>
10 #include <linux/interrupt.h>
11
12 #include <asm/setup.h>
13 #include <asm/pgalloc.h>
14 #include <asm/irq.h>
15 #include <asm/io.h>
16 #include <asm/checksum.h>
17 #include <asm/hardirq.h>
18 #include <asm/cacheflush.h>
19
20 extern long __memcpy_user(void *dst, const void *src, size_t count);
21 extern long __memset_user(void *dst, const void *src, size_t count);
22
23 /* platform dependent support */
24
25 EXPORT_SYMBOL(__ioremap);
26 EXPORT_SYMBOL(iounmap);
27
28 EXPORT_SYMBOL(ip_fast_csum);
29
30 #if 0
31 EXPORT_SYMBOL(local_irq_count);
32 EXPORT_SYMBOL(local_bh_count);
33 #endif
34
35 EXPORT_SYMBOL(__res_bus_clock_speed_HZ);
36 EXPORT_SYMBOL(__page_offset);
37 EXPORT_SYMBOL(__memcpy_user);
38 EXPORT_SYMBOL(__memset_user);
39 EXPORT_SYMBOL(frv_dcache_writeback);
40 EXPORT_SYMBOL(frv_cache_invalidate);
41 EXPORT_SYMBOL(frv_icache_invalidate);
42 EXPORT_SYMBOL(frv_cache_wback_inv);
43
44 #ifndef CONFIG_MMU
45 EXPORT_SYMBOL(memory_start);
46 EXPORT_SYMBOL(memory_end);
47 #endif
48
49 EXPORT_SYMBOL(__debug_bug_trap);
50
51 /* The following are special because they're not called
52    explicitly (the C compiler generates them).  Fortunately,
53    their interface isn't gonna change any time soon now, so
54    it's OK to leave it out of version control.  */
55 EXPORT_SYMBOL(memcpy);
56 EXPORT_SYMBOL(memset);
57
58 EXPORT_SYMBOL(__outsl_ns);
59 EXPORT_SYMBOL(__insl_ns);
60
61 #ifdef CONFIG_FRV_OUTOFLINE_ATOMIC_OPS
62 EXPORT_SYMBOL(__xchg_32);
63 EXPORT_SYMBOL(__cmpxchg_32);
64 #endif
65 EXPORT_SYMBOL(atomic64_add_return);
66 EXPORT_SYMBOL(atomic64_sub_return);
67 EXPORT_SYMBOL(__xchg_64);
68 EXPORT_SYMBOL(__cmpxchg_64);
69
70 EXPORT_SYMBOL(__debug_bug_printk);
71 EXPORT_SYMBOL(__delay_loops_MHz);
72
73 /*
74  * libgcc functions - functions that are used internally by the
75  * compiler...  (prototypes are not correct though, but that
76  * doesn't really matter since they're not versioned).
77  */
78 extern void __gcc_bcmp(void);
79 extern void __ashldi3(void);
80 extern void __ashrdi3(void);
81 extern void __cmpdi2(void);
82 extern void __divdi3(void);
83 extern void __lshrdi3(void);
84 extern void __moddi3(void);
85 extern void __muldi3(void);
86 extern void __mulll(void);
87 extern void __umulll(void);
88 extern void __negdi2(void);
89 extern void __ucmpdi2(void);
90 extern void __udivdi3(void);
91 extern void __udivmoddi4(void);
92 extern void __umoddi3(void);
93
94         /* gcc lib functions */
95 //EXPORT_SYMBOL(__gcc_bcmp);
96 EXPORT_SYMBOL(__ashldi3);
97 EXPORT_SYMBOL(__ashrdi3);
98 //EXPORT_SYMBOL(__cmpdi2);
99 //EXPORT_SYMBOL(__divdi3);
100 EXPORT_SYMBOL(__lshrdi3);
101 //EXPORT_SYMBOL(__moddi3);
102 EXPORT_SYMBOL(__muldi3);
103 EXPORT_SYMBOL(__mulll);
104 EXPORT_SYMBOL(__umulll);
105 EXPORT_SYMBOL(__negdi2);
106 EXPORT_SYMBOL(__ucmpdi2);
107 //EXPORT_SYMBOL(__udivdi3);
108 //EXPORT_SYMBOL(__udivmoddi4);
109 //EXPORT_SYMBOL(__umoddi3);