Generic semaphore implementation
[linux-2.6.git] / arch / blackfin / kernel / bfin_ksyms.c
1 /*
2  * File:         arch/blackfin/kernel/bfin_ksyms.c
3  * Based on:     none - original work
4  * Author:
5  *
6  * Created:
7  * Description:
8  *
9  * Modified:
10  *               Copyright 2004-2006 Analog Devices Inc.
11  *
12  * Bugs:         Enter bugs at http://blackfin.uclinux.org/
13  *
14  * This program is free software; you can redistribute it and/or modify
15  * it under the terms of the GNU General Public License as published by
16  * the Free Software Foundation; either version 2 of the License, or
17  * (at your option) any later version.
18  *
19  * This program is distributed in the hope that it will be useful,
20  * but WITHOUT ANY WARRANTY; without even the implied warranty of
21  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
22  * GNU General Public License for more details.
23  *
24  * You should have received a copy of the GNU General Public License
25  * along with this program; if not, see the file COPYING, or write
26  * to the Free Software Foundation, Inc.,
27  * 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
28  */
29
30 #include <linux/module.h>
31 #include <linux/irq.h>
32 #include <linux/uaccess.h>
33
34 #include <asm/checksum.h>
35 #include <asm/cacheflush.h>
36
37 /* platform dependent support */
38
39 EXPORT_SYMBOL(__ioremap);
40
41 EXPORT_SYMBOL(ip_fast_csum);
42
43 EXPORT_SYMBOL(kernel_thread);
44
45 EXPORT_SYMBOL(is_in_rom);
46 EXPORT_SYMBOL(bfin_return_from_exception);
47
48 /* Networking helper routines. */
49 EXPORT_SYMBOL(csum_partial_copy);
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  */
56 EXPORT_SYMBOL(memcpy);
57 EXPORT_SYMBOL(memset);
58 EXPORT_SYMBOL(memcmp);
59 EXPORT_SYMBOL(memmove);
60 EXPORT_SYMBOL(memchr);
61
62 /*
63  * libgcc functions - functions that are used internally by the
64  * compiler...  (prototypes are not correct though, but that
65  * doesn't really matter since they're not versioned).
66  */
67 extern void __ashldi3(void);
68 extern void __ashrdi3(void);
69 extern void __smulsi3_highpart(void);
70 extern void __umulsi3_highpart(void);
71 extern void __divsi3(void);
72 extern void __lshrdi3(void);
73 extern void __modsi3(void);
74 extern void __muldi3(void);
75 extern void __udivsi3(void);
76 extern void __umodsi3(void);
77
78 /* gcc lib functions */
79 EXPORT_SYMBOL(__ashldi3);
80 EXPORT_SYMBOL(__ashrdi3);
81 EXPORT_SYMBOL(__umulsi3_highpart);
82 EXPORT_SYMBOL(__smulsi3_highpart);
83 EXPORT_SYMBOL(__divsi3);
84 EXPORT_SYMBOL(__lshrdi3);
85 EXPORT_SYMBOL(__modsi3);
86 EXPORT_SYMBOL(__muldi3);
87 EXPORT_SYMBOL(__udivsi3);
88 EXPORT_SYMBOL(__umodsi3);
89
90 EXPORT_SYMBOL(outsb);
91 EXPORT_SYMBOL(insb);
92 EXPORT_SYMBOL(outsw);
93 EXPORT_SYMBOL(insw);
94 EXPORT_SYMBOL(outsl);
95 EXPORT_SYMBOL(insl);
96 EXPORT_SYMBOL(insl_16);
97 EXPORT_SYMBOL(irq_flags);
98 EXPORT_SYMBOL(iounmap);
99 EXPORT_SYMBOL(blackfin_dcache_invalidate_range);
100 EXPORT_SYMBOL(blackfin_icache_dcache_flush_range);
101 EXPORT_SYMBOL(blackfin_icache_flush_range);
102 EXPORT_SYMBOL(blackfin_dcache_flush_range);
103 EXPORT_SYMBOL(blackfin_dflush_page);
104
105 EXPORT_SYMBOL(csum_partial);
106 EXPORT_SYMBOL(__init_begin);
107 EXPORT_SYMBOL(__init_end);
108 EXPORT_SYMBOL(_ebss_l1);
109 EXPORT_SYMBOL(_stext_l1);
110 EXPORT_SYMBOL(_etext_l1);
111 EXPORT_SYMBOL(_sdata_l1);
112 EXPORT_SYMBOL(_ebss_b_l1);
113 EXPORT_SYMBOL(_sdata_b_l1);