5f118c89d091f82a5dedcaf2f3a4696fdf5117f6
[linux-2.6.git] / arch / frv / kernel / frv_ksyms.c
1 #include <linux/module.h>
2 #include <linux/linkage.h>
3 #include <linux/sched.h>
4 #include <linux/string.h>
5 #include <linux/mm.h>
6 #include <linux/user.h>
7 #include <linux/elfcore.h>
8 #include <linux/in6.h>
9 #include <linux/interrupt.h>
10 #include <linux/config.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/semaphore.h>
17 #include <asm/checksum.h>
18 #include <asm/hardirq.h>
19 #include <asm/cacheflush.h>
20
21 extern void dump_thread(struct pt_regs *, struct user *);
22 extern long __memcpy_user(void *dst, const void *src, size_t count);
23 extern long __memset_user(void *dst, const void *src, size_t count);
24
25 /* platform dependent support */
26
27 EXPORT_SYMBOL(__ioremap);
28 EXPORT_SYMBOL(iounmap);
29
30 EXPORT_SYMBOL(dump_thread);
31 EXPORT_SYMBOL(strnlen);
32 EXPORT_SYMBOL(strrchr);
33 EXPORT_SYMBOL(strstr);
34 EXPORT_SYMBOL(strchr);
35 EXPORT_SYMBOL(strcat);
36 EXPORT_SYMBOL(strlen);
37 EXPORT_SYMBOL(strcmp);
38 EXPORT_SYMBOL(strncmp);
39 EXPORT_SYMBOL(strncpy);
40
41 EXPORT_SYMBOL(ip_fast_csum);
42
43 #if 0
44 EXPORT_SYMBOL(local_irq_count);
45 EXPORT_SYMBOL(local_bh_count);
46 #endif
47 EXPORT_SYMBOL(kernel_thread);
48
49 EXPORT_SYMBOL(enable_irq);
50 EXPORT_SYMBOL(disable_irq);
51 EXPORT_SYMBOL(__res_bus_clock_speed_HZ);
52 EXPORT_SYMBOL(__page_offset);
53 EXPORT_SYMBOL(__memcpy_user);
54 EXPORT_SYMBOL(__memset_user);
55 EXPORT_SYMBOL(frv_dcache_writeback);
56 EXPORT_SYMBOL(frv_cache_invalidate);
57 EXPORT_SYMBOL(frv_icache_invalidate);
58 EXPORT_SYMBOL(frv_cache_wback_inv);
59
60 #ifndef CONFIG_MMU
61 EXPORT_SYMBOL(memory_start);
62 EXPORT_SYMBOL(memory_end);
63 #endif
64
65 EXPORT_SYMBOL(__debug_bug_trap);
66
67 /* Networking helper routines. */
68 EXPORT_SYMBOL(csum_partial_copy);
69
70 /* The following are special because they're not called
71    explicitly (the C compiler generates them).  Fortunately,
72    their interface isn't gonna change any time soon now, so
73    it's OK to leave it out of version control.  */
74 EXPORT_SYMBOL(memcpy);
75 EXPORT_SYMBOL(memset);
76 EXPORT_SYMBOL(memcmp);
77 EXPORT_SYMBOL(memscan);
78 EXPORT_SYMBOL(memmove);
79
80 EXPORT_SYMBOL(__outsl_ns);
81 EXPORT_SYMBOL(__insl_ns);
82
83 EXPORT_SYMBOL(get_wchan);
84
85 #ifdef CONFIG_FRV_OUTOFLINE_ATOMIC_OPS
86 EXPORT_SYMBOL(atomic_test_and_ANDNOT_mask);
87 EXPORT_SYMBOL(atomic_test_and_OR_mask);
88 EXPORT_SYMBOL(atomic_test_and_XOR_mask);
89 EXPORT_SYMBOL(atomic_add_return);
90 EXPORT_SYMBOL(atomic_sub_return);
91 EXPORT_SYMBOL(__xchg_32);
92 EXPORT_SYMBOL(__cmpxchg_32);
93 #endif
94
95 EXPORT_SYMBOL(__debug_bug_printk);
96 EXPORT_SYMBOL(__delay_loops_MHz);
97
98 /*
99  * libgcc functions - functions that are used internally by the
100  * compiler...  (prototypes are not correct though, but that
101  * doesn't really matter since they're not versioned).
102  */
103 extern void __gcc_bcmp(void);
104 extern void __ashldi3(void);
105 extern void __ashrdi3(void);
106 extern void __cmpdi2(void);
107 extern void __divdi3(void);
108 extern void __lshrdi3(void);
109 extern void __moddi3(void);
110 extern void __muldi3(void);
111 extern void __mulll(void);
112 extern void __umulll(void);
113 extern void __negdi2(void);
114 extern void __ucmpdi2(void);
115 extern void __udivdi3(void);
116 extern void __udivmoddi4(void);
117 extern void __umoddi3(void);
118
119         /* gcc lib functions */
120 //EXPORT_SYMBOL(__gcc_bcmp);
121 EXPORT_SYMBOL(__ashldi3);
122 EXPORT_SYMBOL(__ashrdi3);
123 //EXPORT_SYMBOL(__cmpdi2);
124 //EXPORT_SYMBOL(__divdi3);
125 EXPORT_SYMBOL(__lshrdi3);
126 //EXPORT_SYMBOL(__moddi3);
127 EXPORT_SYMBOL(__muldi3);
128 EXPORT_SYMBOL(__mulll);
129 EXPORT_SYMBOL(__umulll);
130 EXPORT_SYMBOL(__negdi2);
131 EXPORT_SYMBOL(__ucmpdi2);
132 //EXPORT_SYMBOL(__udivdi3);
133 //EXPORT_SYMBOL(__udivmoddi4);
134 //EXPORT_SYMBOL(__umoddi3);