blob: 0f273a7aca5ae841691fae203728249511c85499 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#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>
David Howells40234402006-01-08 01:01:19 -080019#include <asm/cacheflush.h>
Linus Torvalds1da177e2005-04-16 15:20:36 -070020
Linus Torvalds1da177e2005-04-16 15:20:36 -070021extern long __memcpy_user(void *dst, const void *src, size_t count);
David Howells40234402006-01-08 01:01:19 -080022extern long __memset_user(void *dst, const void *src, size_t count);
Linus Torvalds1da177e2005-04-16 15:20:36 -070023
24/* platform dependent support */
25
26EXPORT_SYMBOL(__ioremap);
27EXPORT_SYMBOL(iounmap);
28
Linus Torvalds1da177e2005-04-16 15:20:36 -070029EXPORT_SYMBOL(strnlen);
30EXPORT_SYMBOL(strrchr);
31EXPORT_SYMBOL(strstr);
32EXPORT_SYMBOL(strchr);
33EXPORT_SYMBOL(strcat);
34EXPORT_SYMBOL(strlen);
35EXPORT_SYMBOL(strcmp);
36EXPORT_SYMBOL(strncmp);
37EXPORT_SYMBOL(strncpy);
38
39EXPORT_SYMBOL(ip_fast_csum);
40
41#if 0
42EXPORT_SYMBOL(local_irq_count);
43EXPORT_SYMBOL(local_bh_count);
44#endif
45EXPORT_SYMBOL(kernel_thread);
46
47EXPORT_SYMBOL(enable_irq);
48EXPORT_SYMBOL(disable_irq);
49EXPORT_SYMBOL(__res_bus_clock_speed_HZ);
50EXPORT_SYMBOL(__page_offset);
51EXPORT_SYMBOL(__memcpy_user);
David Howells40234402006-01-08 01:01:19 -080052EXPORT_SYMBOL(__memset_user);
53EXPORT_SYMBOL(frv_dcache_writeback);
54EXPORT_SYMBOL(frv_cache_invalidate);
55EXPORT_SYMBOL(frv_icache_invalidate);
56EXPORT_SYMBOL(frv_cache_wback_inv);
Linus Torvalds1da177e2005-04-16 15:20:36 -070057
58#ifndef CONFIG_MMU
59EXPORT_SYMBOL(memory_start);
60EXPORT_SYMBOL(memory_end);
61#endif
62
63EXPORT_SYMBOL(__debug_bug_trap);
64
65/* Networking helper routines. */
66EXPORT_SYMBOL(csum_partial_copy);
67
68/* The following are special because they're not called
69 explicitly (the C compiler generates them). Fortunately,
70 their interface isn't gonna change any time soon now, so
71 it's OK to leave it out of version control. */
72EXPORT_SYMBOL(memcpy);
73EXPORT_SYMBOL(memset);
74EXPORT_SYMBOL(memcmp);
75EXPORT_SYMBOL(memscan);
76EXPORT_SYMBOL(memmove);
Linus Torvalds1da177e2005-04-16 15:20:36 -070077
David Howells40234402006-01-08 01:01:19 -080078EXPORT_SYMBOL(__outsl_ns);
79EXPORT_SYMBOL(__insl_ns);
80
Linus Torvalds1da177e2005-04-16 15:20:36 -070081#ifdef CONFIG_FRV_OUTOFLINE_ATOMIC_OPS
82EXPORT_SYMBOL(atomic_test_and_ANDNOT_mask);
83EXPORT_SYMBOL(atomic_test_and_OR_mask);
84EXPORT_SYMBOL(atomic_test_and_XOR_mask);
85EXPORT_SYMBOL(atomic_add_return);
86EXPORT_SYMBOL(atomic_sub_return);
Linus Torvalds1da177e2005-04-16 15:20:36 -070087EXPORT_SYMBOL(__xchg_32);
Linus Torvalds1da177e2005-04-16 15:20:36 -070088EXPORT_SYMBOL(__cmpxchg_32);
89#endif
90
David Howells40234402006-01-08 01:01:19 -080091EXPORT_SYMBOL(__debug_bug_printk);
92EXPORT_SYMBOL(__delay_loops_MHz);
93
Linus Torvalds1da177e2005-04-16 15:20:36 -070094/*
95 * libgcc functions - functions that are used internally by the
96 * compiler... (prototypes are not correct though, but that
97 * doesn't really matter since they're not versioned).
98 */
99extern void __gcc_bcmp(void);
100extern void __ashldi3(void);
101extern void __ashrdi3(void);
102extern void __cmpdi2(void);
103extern void __divdi3(void);
104extern void __lshrdi3(void);
105extern void __moddi3(void);
106extern void __muldi3(void);
David Howells40234402006-01-08 01:01:19 -0800107extern void __mulll(void);
108extern void __umulll(void);
Linus Torvalds1da177e2005-04-16 15:20:36 -0700109extern void __negdi2(void);
110extern void __ucmpdi2(void);
111extern void __udivdi3(void);
112extern void __udivmoddi4(void);
113extern void __umoddi3(void);
114
115 /* gcc lib functions */
116//EXPORT_SYMBOL(__gcc_bcmp);
117EXPORT_SYMBOL(__ashldi3);
118EXPORT_SYMBOL(__ashrdi3);
119//EXPORT_SYMBOL(__cmpdi2);
120//EXPORT_SYMBOL(__divdi3);
121EXPORT_SYMBOL(__lshrdi3);
122//EXPORT_SYMBOL(__moddi3);
123EXPORT_SYMBOL(__muldi3);
David Howells40234402006-01-08 01:01:19 -0800124EXPORT_SYMBOL(__mulll);
125EXPORT_SYMBOL(__umulll);
Linus Torvalds1da177e2005-04-16 15:20:36 -0700126EXPORT_SYMBOL(__negdi2);
David Howells40234402006-01-08 01:01:19 -0800127EXPORT_SYMBOL(__ucmpdi2);
Linus Torvalds1da177e2005-04-16 15:20:36 -0700128//EXPORT_SYMBOL(__udivdi3);
129//EXPORT_SYMBOL(__udivmoddi4);
130//EXPORT_SYMBOL(__umoddi3);