Commit | Line | Data |
---|---|---|
753790e7 RK |
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 | ||
753790e7 RK |
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 | ||
753790e7 RK |
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 | ||
bd1274dc | 215 | #if defined(CONFIG_CPU_V6) || defined(CONFIG_CPU_V6K) |
753790e7 RK |
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 | ||
55bdd694 CM |
224 | #ifdef CONFIG_CPU_V7M |
225 | # ifdef CPU_NAME | |
226 | # undef MULTI_CPU | |
227 | # define MULTI_CPU | |
228 | # else | |
229 | # define CPU_NAME cpu_v7m | |
230 | # endif | |
231 | #endif | |
232 | ||
3e0a07f8 GC |
233 | #ifdef CONFIG_CPU_PJ4B |
234 | # ifdef CPU_NAME | |
235 | # undef MULTI_CPU | |
236 | # define MULTI_CPU | |
237 | # else | |
238 | # define CPU_NAME cpu_pj4b | |
239 | # endif | |
240 | #endif | |
241 | ||
ddd0c530 SG |
242 | #ifdef CONFIG_CPU_V7 |
243 | /* | |
244 | * Cortex-A9 needs a different suspend/resume function, so we need | |
245 | * multiple CPU support for ARMv7 anyway. | |
246 | */ | |
247 | # undef MULTI_CPU | |
248 | # define MULTI_CPU | |
249 | #endif | |
250 | ||
753790e7 RK |
251 | #ifndef MULTI_CPU |
252 | #define cpu_proc_init __glue(CPU_NAME,_proc_init) | |
253 | #define cpu_proc_fin __glue(CPU_NAME,_proc_fin) | |
254 | #define cpu_reset __glue(CPU_NAME,_reset) | |
255 | #define cpu_do_idle __glue(CPU_NAME,_do_idle) | |
256 | #define cpu_dcache_clean_area __glue(CPU_NAME,_dcache_clean_area) | |
257 | #define cpu_do_switch_mm __glue(CPU_NAME,_switch_mm) | |
258 | #define cpu_set_pte_ext __glue(CPU_NAME,_set_pte_ext) | |
f6b0fa02 RK |
259 | #define cpu_suspend_size __glue(CPU_NAME,_suspend_size) |
260 | #define cpu_do_suspend __glue(CPU_NAME,_do_suspend) | |
261 | #define cpu_do_resume __glue(CPU_NAME,_do_resume) | |
753790e7 RK |
262 | #endif |
263 | ||
264 | #endif |