Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
glue-proc.h
Go to the documentation of this file.
1 /*
2  * arch/arm/include/asm/glue-proc.h
3  *
4  * Copyright (C) 1997-1999 Russell King
5  * Copyright (C) 2000 Deep Blue Solutions Ltd
6  *
7  * This program is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License version 2 as
9  * published by the Free Software Foundation.
10  */
11 #ifndef ASM_GLUE_PROC_H
12 #define ASM_GLUE_PROC_H
13 
14 #include <asm/glue.h>
15 
16 /*
17  * Work out if we need multiple CPU support
18  */
19 #undef MULTI_CPU
20 #undef CPU_NAME
21 
22 /*
23  * CPU_NAME - the prefix for CPU related functions
24  */
25 
26 #ifdef CONFIG_CPU_ARM7TDMI
27 # ifdef CPU_NAME
28 # undef MULTI_CPU
29 # define MULTI_CPU
30 # else
31 # define CPU_NAME cpu_arm7tdmi
32 # endif
33 #endif
34 
35 #ifdef CONFIG_CPU_ARM720T
36 # ifdef CPU_NAME
37 # undef MULTI_CPU
38 # define MULTI_CPU
39 # else
40 # define CPU_NAME cpu_arm720
41 # endif
42 #endif
43 
44 #ifdef CONFIG_CPU_ARM740T
45 # ifdef CPU_NAME
46 # undef MULTI_CPU
47 # define MULTI_CPU
48 # else
49 # define CPU_NAME cpu_arm740
50 # endif
51 #endif
52 
53 #ifdef CONFIG_CPU_ARM9TDMI
54 # ifdef CPU_NAME
55 # undef MULTI_CPU
56 # define MULTI_CPU
57 # else
58 # define CPU_NAME cpu_arm9tdmi
59 # endif
60 #endif
61 
62 #ifdef CONFIG_CPU_ARM920T
63 # ifdef CPU_NAME
64 # undef MULTI_CPU
65 # define MULTI_CPU
66 # else
67 # define CPU_NAME cpu_arm920
68 # endif
69 #endif
70 
71 #ifdef CONFIG_CPU_ARM922T
72 # ifdef CPU_NAME
73 # undef MULTI_CPU
74 # define MULTI_CPU
75 # else
76 # define CPU_NAME cpu_arm922
77 # endif
78 #endif
79 
80 #ifdef CONFIG_CPU_FA526
81 # ifdef CPU_NAME
82 # undef MULTI_CPU
83 # define MULTI_CPU
84 # else
85 # define CPU_NAME cpu_fa526
86 # endif
87 #endif
88 
89 #ifdef CONFIG_CPU_ARM925T
90 # ifdef CPU_NAME
91 # undef MULTI_CPU
92 # define MULTI_CPU
93 # else
94 # define CPU_NAME cpu_arm925
95 # endif
96 #endif
97 
98 #ifdef CONFIG_CPU_ARM926T
99 # ifdef CPU_NAME
100 # undef MULTI_CPU
101 # define MULTI_CPU
102 # else
103 # define CPU_NAME cpu_arm926
104 # endif
105 #endif
106 
107 #ifdef CONFIG_CPU_ARM940T
108 # ifdef CPU_NAME
109 # undef MULTI_CPU
110 # define MULTI_CPU
111 # else
112 # define CPU_NAME cpu_arm940
113 # endif
114 #endif
115 
116 #ifdef CONFIG_CPU_ARM946E
117 # ifdef CPU_NAME
118 # undef MULTI_CPU
119 # define MULTI_CPU
120 # else
121 # define CPU_NAME cpu_arm946
122 # endif
123 #endif
124 
125 #ifdef CONFIG_CPU_SA110
126 # ifdef CPU_NAME
127 # undef MULTI_CPU
128 # define MULTI_CPU
129 # else
130 # define CPU_NAME cpu_sa110
131 # endif
132 #endif
133 
134 #ifdef CONFIG_CPU_SA1100
135 # ifdef CPU_NAME
136 # undef MULTI_CPU
137 # define MULTI_CPU
138 # else
139 # define CPU_NAME cpu_sa1100
140 # endif
141 #endif
142 
143 #ifdef CONFIG_CPU_ARM1020
144 # ifdef CPU_NAME
145 # undef MULTI_CPU
146 # define MULTI_CPU
147 # else
148 # define CPU_NAME cpu_arm1020
149 # endif
150 #endif
151 
152 #ifdef CONFIG_CPU_ARM1020E
153 # ifdef CPU_NAME
154 # undef MULTI_CPU
155 # define MULTI_CPU
156 # else
157 # define CPU_NAME cpu_arm1020e
158 # endif
159 #endif
160 
161 #ifdef CONFIG_CPU_ARM1022
162 # ifdef CPU_NAME
163 # undef MULTI_CPU
164 # define MULTI_CPU
165 # else
166 # define CPU_NAME cpu_arm1022
167 # endif
168 #endif
169 
170 #ifdef CONFIG_CPU_ARM1026
171 # ifdef CPU_NAME
172 # undef MULTI_CPU
173 # define MULTI_CPU
174 # else
175 # define CPU_NAME cpu_arm1026
176 # endif
177 #endif
178 
179 #ifdef CONFIG_CPU_XSCALE
180 # ifdef CPU_NAME
181 # undef MULTI_CPU
182 # define MULTI_CPU
183 # else
184 # define CPU_NAME cpu_xscale
185 # endif
186 #endif
187 
188 #ifdef CONFIG_CPU_XSC3
189 # ifdef CPU_NAME
190 # undef MULTI_CPU
191 # define MULTI_CPU
192 # else
193 # define CPU_NAME cpu_xsc3
194 # endif
195 #endif
196 
197 #ifdef CONFIG_CPU_MOHAWK
198 # ifdef CPU_NAME
199 # undef MULTI_CPU
200 # define MULTI_CPU
201 # else
202 # define CPU_NAME cpu_mohawk
203 # endif
204 #endif
205 
206 #ifdef CONFIG_CPU_FEROCEON
207 # ifdef CPU_NAME
208 # undef MULTI_CPU
209 # define MULTI_CPU
210 # else
211 # define CPU_NAME cpu_feroceon
212 # endif
213 #endif
214 
215 #if defined(CONFIG_CPU_V6) || defined(CONFIG_CPU_V6K)
216 # ifdef CPU_NAME
217 # undef MULTI_CPU
218 # define MULTI_CPU
219 # else
220 # define CPU_NAME cpu_v6
221 # endif
222 #endif
223 
224 #ifdef CONFIG_CPU_V7
225 # ifdef CPU_NAME
226 # undef MULTI_CPU
227 # define MULTI_CPU
228 # else
229 # define CPU_NAME cpu_v7
230 # endif
231 #endif
232 
233 #ifndef MULTI_CPU
234 #define cpu_proc_init __glue(CPU_NAME,_proc_init)
235 #define cpu_proc_fin __glue(CPU_NAME,_proc_fin)
236 #define cpu_reset __glue(CPU_NAME,_reset)
237 #define cpu_do_idle __glue(CPU_NAME,_do_idle)
238 #define cpu_dcache_clean_area __glue(CPU_NAME,_dcache_clean_area)
239 #define cpu_do_switch_mm __glue(CPU_NAME,_switch_mm)
240 #define cpu_set_pte_ext __glue(CPU_NAME,_set_pte_ext)
241 #define cpu_suspend_size __glue(CPU_NAME,_suspend_size)
242 #define cpu_do_suspend __glue(CPU_NAME,_do_suspend)
243 #define cpu_do_resume __glue(CPU_NAME,_do_resume)
244 #endif
245 
246 #endif