[PATCH] frv: implement and export various things required by modules
[linux-2.6/cjktty.git] / arch / frv / kernel / frv_ksyms.c
blob5f118c89d091f82a5dedcaf2f3a4696fdf5117f6
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>
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>
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);
25 /* platform dependent support */
27 EXPORT_SYMBOL(__ioremap);
28 EXPORT_SYMBOL(iounmap);
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);
41 EXPORT_SYMBOL(ip_fast_csum);
43 #if 0
44 EXPORT_SYMBOL(local_irq_count);
45 EXPORT_SYMBOL(local_bh_count);
46 #endif
47 EXPORT_SYMBOL(kernel_thread);
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);
60 #ifndef CONFIG_MMU
61 EXPORT_SYMBOL(memory_start);
62 EXPORT_SYMBOL(memory_end);
63 #endif
65 EXPORT_SYMBOL(__debug_bug_trap);
67 /* Networking helper routines. */
68 EXPORT_SYMBOL(csum_partial_copy);
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);
80 EXPORT_SYMBOL(__outsl_ns);
81 EXPORT_SYMBOL(__insl_ns);
83 EXPORT_SYMBOL(get_wchan);
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
95 EXPORT_SYMBOL(__debug_bug_printk);
96 EXPORT_SYMBOL(__delay_loops_MHz);
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).
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);
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);