Blackfin arch: fix bux - only reset the PC when necessary, otherwise gdb gets confused
[linux-2.6] / 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 EXPORT_SYMBOL(strcmp);
41 EXPORT_SYMBOL(strncmp);
42 EXPORT_SYMBOL(dump_thread);
43
44 EXPORT_SYMBOL(ip_fast_csum);
45
46 EXPORT_SYMBOL(kernel_thread);
47
48 EXPORT_SYMBOL(__up);
49 EXPORT_SYMBOL(__down);
50 EXPORT_SYMBOL(__down_trylock);
51 EXPORT_SYMBOL(__down_interruptible);
52
53 EXPORT_SYMBOL(is_in_rom);
54
55 /* Networking helper routines. */
56 EXPORT_SYMBOL(csum_partial_copy);
57
58 /* The following are special because they're not called
59  * explicitly (the C compiler generates them).  Fortunately,
60  * their interface isn't gonna change any time soon now, so
61  * it's OK to leave it out of version control.
62  */
63 EXPORT_SYMBOL(strcpy);
64 EXPORT_SYMBOL(memcpy);
65 EXPORT_SYMBOL(memset);
66 EXPORT_SYMBOL(memcmp);
67 EXPORT_SYMBOL(memmove);
68 EXPORT_SYMBOL(memchr);
69 EXPORT_SYMBOL(get_wchan);
70
71 /*
72  * libgcc functions - functions that are used internally by the
73  * compiler...  (prototypes are not correct though, but that
74  * doesn't really matter since they're not versioned).
75  */
76 extern void __ashldi3(void);
77 extern void __ashrdi3(void);
78 extern void __smulsi3_highpart(void);
79 extern void __umulsi3_highpart(void);
80 extern void __divsi3(void);
81 extern void __lshrdi3(void);
82 extern void __modsi3(void);
83 extern void __muldi3(void);
84 extern void __udivsi3(void);
85 extern void __umodsi3(void);
86
87 /* gcc lib functions */
88 EXPORT_SYMBOL(__ashldi3);
89 EXPORT_SYMBOL(__ashrdi3);
90 EXPORT_SYMBOL(__umulsi3_highpart);
91 EXPORT_SYMBOL(__smulsi3_highpart);
92 EXPORT_SYMBOL(__divsi3);
93 EXPORT_SYMBOL(__lshrdi3);
94 EXPORT_SYMBOL(__modsi3);
95 EXPORT_SYMBOL(__muldi3);
96 EXPORT_SYMBOL(__udivsi3);
97 EXPORT_SYMBOL(__umodsi3);
98
99 EXPORT_SYMBOL(outsb);
100 EXPORT_SYMBOL(insb);
101 EXPORT_SYMBOL(outsw);
102 EXPORT_SYMBOL(insw);
103 EXPORT_SYMBOL(outsl);
104 EXPORT_SYMBOL(insl);
105 EXPORT_SYMBOL(irq_flags);
106 EXPORT_SYMBOL(iounmap);
107 EXPORT_SYMBOL(blackfin_dcache_invalidate_range);
108 EXPORT_SYMBOL(blackfin_icache_dcache_flush_range);
109 EXPORT_SYMBOL(blackfin_icache_flush_range);
110 EXPORT_SYMBOL(blackfin_dcache_flush_range);
111 EXPORT_SYMBOL(blackfin_dflush_page);
112
113 EXPORT_SYMBOL(csum_partial);
114 EXPORT_SYMBOL(__init_begin);
115 EXPORT_SYMBOL(__init_end);
116 EXPORT_SYMBOL(_ebss_l1);
117 EXPORT_SYMBOL(_stext_l1);
118 EXPORT_SYMBOL(_etext_l1);
119 EXPORT_SYMBOL(_sdata_l1);
120 EXPORT_SYMBOL(_ebss_b_l1);
121 EXPORT_SYMBOL(_sdata_b_l1);