ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.6.tar.bz2
[linux-2.6.git] / arch / parisc / kernel / parisc_ksyms.c
1 /*
2  *    Architecture-specific kernel symbols
3  *
4  *    Copyright (C) 2000-2001 Richard Hirst <rhirst with parisc-linux.org>
5  *    Copyright (C) 2001 Dave Kennedy
6  *    Copyright (C) 2001 Paul Bame <bame at parisc-linux.org>
7  *    Copyright (C) 2001-2003 Grant Grundler <grundler with parisc-linux.org>
8  *    Copyright (C) 2002-2003 Matthew Wilcox <willy at parisc-linux.org>
9  *    Copyright (C) 2002 Randolph Chung <tausq at parisc-linux.org>
10  *    Copyright (C) 2002-2003 Helge Deller <deller with parisc-linux.org>
11  * 
12  *    This program is free software; you can redistribute it and/or modify
13  *    it under the terms of the GNU General Public License as published by
14  *    the Free Software Foundation; either version 2 of the License, or
15  *    (at your option) any later version.
16  *
17  *    This program is distributed in the hope that it will be useful,
18  *    but WITHOUT ANY WARRANTY; without even the implied warranty of
19  *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
20  *    GNU General Public License for more details.
21  *
22  *    You should have received a copy of the GNU General Public License
23  *    along with this program; if not, write to the Free Software
24  *    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
25  */
26
27 #include <linux/config.h>
28 #include <linux/module.h>
29 #include <linux/kernel.h>
30 #include <linux/syscalls.h>
31
32 #include <linux/string.h>
33 EXPORT_SYMBOL(memchr);
34 EXPORT_SYMBOL(memcmp);
35 EXPORT_SYMBOL(memcpy);
36 EXPORT_SYMBOL(memmove);
37 EXPORT_SYMBOL(memscan);
38 EXPORT_SYMBOL(memset);
39 EXPORT_SYMBOL(strcat);
40 EXPORT_SYMBOL(strchr);
41 EXPORT_SYMBOL(strcmp);
42 EXPORT_SYMBOL(strcpy);
43 EXPORT_SYMBOL(strlen);
44 EXPORT_SYMBOL(strncat);
45 EXPORT_SYMBOL(strncmp);
46 EXPORT_SYMBOL(strncpy);
47 EXPORT_SYMBOL(strnlen);
48 EXPORT_SYMBOL(strrchr);
49 EXPORT_SYMBOL(strstr);
50 EXPORT_SYMBOL(strpbrk);
51
52 #include <linux/pm.h>
53 EXPORT_SYMBOL(pm_power_off);
54
55 #include <asm/atomic.h>
56 EXPORT_SYMBOL(__xchg8);
57 EXPORT_SYMBOL(__xchg32);
58 EXPORT_SYMBOL(__cmpxchg_u32);
59 #ifdef CONFIG_SMP
60 EXPORT_SYMBOL(__atomic_hash);
61 #endif
62 #ifdef __LP64__
63 EXPORT_SYMBOL(__xchg64);
64 EXPORT_SYMBOL(__cmpxchg_u64);
65 #endif
66
67 #include <asm/uaccess.h>
68 EXPORT_SYMBOL(lcopy_to_user);
69 EXPORT_SYMBOL(lcopy_from_user);
70 EXPORT_SYMBOL(lcopy_in_user);
71 EXPORT_SYMBOL(lstrncpy_from_user);
72 EXPORT_SYMBOL(lclear_user);
73 EXPORT_SYMBOL(lstrnlen_user);
74
75 #ifndef __LP64__
76 /* Needed so insmod can set dp value */
77 extern int $global$;
78 EXPORT_SYMBOL($global$);
79 #endif
80
81 #include <asm/io.h>
82 EXPORT_SYMBOL(__ioremap);
83 EXPORT_SYMBOL(iounmap);
84 EXPORT_SYMBOL(__memcpy_toio);
85 EXPORT_SYMBOL(__memcpy_fromio);
86 EXPORT_SYMBOL(__memset_io);
87
88 #include <asm/unistd.h>
89 EXPORT_SYMBOL(sys_open);
90 EXPORT_SYMBOL(sys_lseek);
91 EXPORT_SYMBOL(sys_read);
92 EXPORT_SYMBOL(sys_write);
93
94 #include <asm/semaphore.h>
95 EXPORT_SYMBOL(__up);
96 EXPORT_SYMBOL(__down_interruptible);
97 EXPORT_SYMBOL(__down);
98
99 extern void $$divI(void);
100 extern void $$divU(void);
101 extern void $$remI(void);
102 extern void $$remU(void);
103 extern void $$mulI(void);
104 extern void $$divU_3(void);
105 extern void $$divU_5(void);
106 extern void $$divU_6(void);
107 extern void $$divU_9(void);
108 extern void $$divU_10(void);
109 extern void $$divU_12(void);
110 extern void $$divU_7(void);
111 extern void $$divU_14(void);
112 extern void $$divU_15(void);
113 extern void $$divI_3(void);
114 extern void $$divI_5(void);
115 extern void $$divI_6(void);
116 extern void $$divI_7(void);
117 extern void $$divI_9(void);
118 extern void $$divI_10(void);
119 extern void $$divI_12(void);
120 extern void $$divI_14(void);
121 extern void $$divI_15(void);
122
123 EXPORT_SYMBOL($$divI);
124 EXPORT_SYMBOL($$divU);
125 EXPORT_SYMBOL($$remI);
126 EXPORT_SYMBOL($$remU);
127 EXPORT_SYMBOL($$mulI);
128 EXPORT_SYMBOL($$divU_3);
129 EXPORT_SYMBOL($$divU_5);
130 EXPORT_SYMBOL($$divU_6);
131 EXPORT_SYMBOL($$divU_9);
132 EXPORT_SYMBOL($$divU_10);
133 EXPORT_SYMBOL($$divU_12);
134 EXPORT_SYMBOL($$divU_7);
135 EXPORT_SYMBOL($$divU_14);
136 EXPORT_SYMBOL($$divU_15);
137 EXPORT_SYMBOL($$divI_3);
138 EXPORT_SYMBOL($$divI_5);
139 EXPORT_SYMBOL($$divI_6);
140 EXPORT_SYMBOL($$divI_7);
141 EXPORT_SYMBOL($$divI_9);
142 EXPORT_SYMBOL($$divI_10);
143 EXPORT_SYMBOL($$divI_12);
144 EXPORT_SYMBOL($$divI_14);
145 EXPORT_SYMBOL($$divI_15);
146
147 extern void __ashrdi3(void);
148 extern void __ashldi3(void);
149 extern void __lshrdi3(void);
150 extern void __muldi3(void);
151
152 EXPORT_SYMBOL(__ashrdi3);
153 EXPORT_SYMBOL(__ashldi3);
154 EXPORT_SYMBOL(__lshrdi3);
155 EXPORT_SYMBOL(__muldi3);
156
157 asmlinkage void * __canonicalize_funcptr_for_compare(void *);
158 EXPORT_SYMBOL(__canonicalize_funcptr_for_compare);
159
160 #ifdef __LP64__
161 extern void __divdi3(void);
162 extern void __udivdi3(void);
163 extern void __umoddi3(void);
164 extern void __moddi3(void);
165
166 EXPORT_SYMBOL(__divdi3);
167 EXPORT_SYMBOL(__udivdi3);
168 EXPORT_SYMBOL(__umoddi3);
169 EXPORT_SYMBOL(__moddi3);
170 #endif
171
172 #ifndef __LP64__
173 extern void $$dyncall(void);
174 EXPORT_SYMBOL($$dyncall);
175 #endif