diff options
author | Russell King <rmk@dyn-67.arm.linux.org.uk> | 2008-08-02 05:55:55 -0400 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2008-08-02 16:32:35 -0400 |
commit | 4baa9922430662431231ac637adedddbb0cfb2d7 (patch) | |
tree | e8fb765ce3e41c01f33de34a0bc9494f0ae19818 /arch/arm/include/asm/proc-fns.h | |
parent | ff4db0a043a5dee7180bdffd178e61cd02812c68 (diff) |
[ARM] move include/asm-arm to arch/arm/include/asm
Move platform independent header files to arch/arm/include/asm, leaving
those in asm/arch* and asm/plat* alone.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/include/asm/proc-fns.h')
-rw-r--r-- | arch/arm/include/asm/proc-fns.h | 241 |
1 files changed, 241 insertions, 0 deletions
diff --git a/arch/arm/include/asm/proc-fns.h b/arch/arm/include/asm/proc-fns.h new file mode 100644 index 000000000000..db80203b68e0 --- /dev/null +++ b/arch/arm/include/asm/proc-fns.h | |||
@@ -0,0 +1,241 @@ | |||
1 | /* | ||
2 | * arch/arm/include/asm/proc-fns.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_PROCFNS_H | ||
12 | #define __ASM_PROCFNS_H | ||
13 | |||
14 | #ifdef __KERNEL__ | ||
15 | |||
16 | |||
17 | /* | ||
18 | * Work out if we need multiple CPU support | ||
19 | */ | ||
20 | #undef MULTI_CPU | ||
21 | #undef CPU_NAME | ||
22 | |||
23 | /* | ||
24 | * CPU_NAME - the prefix for CPU related functions | ||
25 | */ | ||
26 | |||
27 | #ifdef CONFIG_CPU_32 | ||
28 | # ifdef CONFIG_CPU_ARM610 | ||
29 | # ifdef CPU_NAME | ||
30 | # undef MULTI_CPU | ||
31 | # define MULTI_CPU | ||
32 | # else | ||
33 | # define CPU_NAME cpu_arm6 | ||
34 | # endif | ||
35 | # endif | ||
36 | # ifdef CONFIG_CPU_ARM7TDMI | ||
37 | # ifdef CPU_NAME | ||
38 | # undef MULTI_CPU | ||
39 | # define MULTI_CPU | ||
40 | # else | ||
41 | # define CPU_NAME cpu_arm7tdmi | ||
42 | # endif | ||
43 | # endif | ||
44 | # ifdef CONFIG_CPU_ARM710 | ||
45 | # ifdef CPU_NAME | ||
46 | # undef MULTI_CPU | ||
47 | # define MULTI_CPU | ||
48 | # else | ||
49 | # define CPU_NAME cpu_arm7 | ||
50 | # endif | ||
51 | # endif | ||
52 | # ifdef CONFIG_CPU_ARM720T | ||
53 | # ifdef CPU_NAME | ||
54 | # undef MULTI_CPU | ||
55 | # define MULTI_CPU | ||
56 | # else | ||
57 | # define CPU_NAME cpu_arm720 | ||
58 | # endif | ||
59 | # endif | ||
60 | # ifdef CONFIG_CPU_ARM740T | ||
61 | # ifdef CPU_NAME | ||
62 | # undef MULTI_CPU | ||
63 | # define MULTI_CPU | ||
64 | # else | ||
65 | # define CPU_NAME cpu_arm740 | ||
66 | # endif | ||
67 | # endif | ||
68 | # ifdef CONFIG_CPU_ARM9TDMI | ||
69 | # ifdef CPU_NAME | ||
70 | # undef MULTI_CPU | ||
71 | # define MULTI_CPU | ||
72 | # else | ||
73 | # define CPU_NAME cpu_arm9tdmi | ||
74 | # endif | ||
75 | # endif | ||
76 | # ifdef CONFIG_CPU_ARM920T | ||
77 | # ifdef CPU_NAME | ||
78 | # undef MULTI_CPU | ||
79 | # define MULTI_CPU | ||
80 | # else | ||
81 | # define CPU_NAME cpu_arm920 | ||
82 | # endif | ||
83 | # endif | ||
84 | # ifdef CONFIG_CPU_ARM922T | ||
85 | # ifdef CPU_NAME | ||
86 | # undef MULTI_CPU | ||
87 | # define MULTI_CPU | ||
88 | # else | ||
89 | # define CPU_NAME cpu_arm922 | ||
90 | # endif | ||
91 | # endif | ||
92 | # ifdef CONFIG_CPU_ARM925T | ||
93 | # ifdef CPU_NAME | ||
94 | # undef MULTI_CPU | ||
95 | # define MULTI_CPU | ||
96 | # else | ||
97 | # define CPU_NAME cpu_arm925 | ||
98 | # endif | ||
99 | # endif | ||
100 | # ifdef CONFIG_CPU_ARM926T | ||
101 | # ifdef CPU_NAME | ||
102 | # undef MULTI_CPU | ||
103 | # define MULTI_CPU | ||
104 | # else | ||
105 | # define CPU_NAME cpu_arm926 | ||
106 | # endif | ||
107 | # endif | ||
108 | # ifdef CONFIG_CPU_ARM940T | ||
109 | # ifdef CPU_NAME | ||
110 | # undef MULTI_CPU | ||
111 | # define MULTI_CPU | ||
112 | # else | ||
113 | # define CPU_NAME cpu_arm940 | ||
114 | # endif | ||
115 | # endif | ||
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 | # ifdef CONFIG_CPU_SA110 | ||
125 | # ifdef CPU_NAME | ||
126 | # undef MULTI_CPU | ||
127 | # define MULTI_CPU | ||
128 | # else | ||
129 | # define CPU_NAME cpu_sa110 | ||
130 | # endif | ||
131 | # endif | ||
132 | # ifdef CONFIG_CPU_SA1100 | ||
133 | # ifdef CPU_NAME | ||
134 | # undef MULTI_CPU | ||
135 | # define MULTI_CPU | ||
136 | # else | ||
137 | # define CPU_NAME cpu_sa1100 | ||
138 | # endif | ||
139 | # endif | ||
140 | # ifdef CONFIG_CPU_ARM1020 | ||
141 | # ifdef CPU_NAME | ||
142 | # undef MULTI_CPU | ||
143 | # define MULTI_CPU | ||
144 | # else | ||
145 | # define CPU_NAME cpu_arm1020 | ||
146 | # endif | ||
147 | # endif | ||
148 | # ifdef CONFIG_CPU_ARM1020E | ||
149 | # ifdef CPU_NAME | ||
150 | # undef MULTI_CPU | ||
151 | # define MULTI_CPU | ||
152 | # else | ||
153 | # define CPU_NAME cpu_arm1020e | ||
154 | # endif | ||
155 | # endif | ||
156 | # ifdef CONFIG_CPU_ARM1022 | ||
157 | # ifdef CPU_NAME | ||
158 | # undef MULTI_CPU | ||
159 | # define MULTI_CPU | ||
160 | # else | ||
161 | # define CPU_NAME cpu_arm1022 | ||
162 | # endif | ||
163 | # endif | ||
164 | # ifdef CONFIG_CPU_ARM1026 | ||
165 | # ifdef CPU_NAME | ||
166 | # undef MULTI_CPU | ||
167 | # define MULTI_CPU | ||
168 | # else | ||
169 | # define CPU_NAME cpu_arm1026 | ||
170 | # endif | ||
171 | # endif | ||
172 | # ifdef CONFIG_CPU_XSCALE | ||
173 | # ifdef CPU_NAME | ||
174 | # undef MULTI_CPU | ||
175 | # define MULTI_CPU | ||
176 | # else | ||
177 | # define CPU_NAME cpu_xscale | ||
178 | # endif | ||
179 | # endif | ||
180 | # ifdef CONFIG_CPU_XSC3 | ||
181 | # ifdef CPU_NAME | ||
182 | # undef MULTI_CPU | ||
183 | # define MULTI_CPU | ||
184 | # else | ||
185 | # define CPU_NAME cpu_xsc3 | ||
186 | # endif | ||
187 | # endif | ||
188 | # ifdef CONFIG_CPU_FEROCEON | ||
189 | # ifdef CPU_NAME | ||
190 | # undef MULTI_CPU | ||
191 | # define MULTI_CPU | ||
192 | # else | ||
193 | # define CPU_NAME cpu_feroceon | ||
194 | # endif | ||
195 | # endif | ||
196 | # ifdef CONFIG_CPU_V6 | ||
197 | # ifdef CPU_NAME | ||
198 | # undef MULTI_CPU | ||
199 | # define MULTI_CPU | ||
200 | # else | ||
201 | # define CPU_NAME cpu_v6 | ||
202 | # endif | ||
203 | # endif | ||
204 | # ifdef CONFIG_CPU_V7 | ||
205 | # ifdef CPU_NAME | ||
206 | # undef MULTI_CPU | ||
207 | # define MULTI_CPU | ||
208 | # else | ||
209 | # define CPU_NAME cpu_v7 | ||
210 | # endif | ||
211 | # endif | ||
212 | #endif | ||
213 | |||
214 | #ifndef __ASSEMBLY__ | ||
215 | |||
216 | #ifndef MULTI_CPU | ||
217 | #include <asm/cpu-single.h> | ||
218 | #else | ||
219 | #include <asm/cpu-multi32.h> | ||
220 | #endif | ||
221 | |||
222 | #include <asm/memory.h> | ||
223 | |||
224 | #ifdef CONFIG_MMU | ||
225 | |||
226 | #define cpu_switch_mm(pgd,mm) cpu_do_switch_mm(virt_to_phys(pgd),mm) | ||
227 | |||
228 | #define cpu_get_pgd() \ | ||
229 | ({ \ | ||
230 | unsigned long pg; \ | ||
231 | __asm__("mrc p15, 0, %0, c2, c0, 0" \ | ||
232 | : "=r" (pg) : : "cc"); \ | ||
233 | pg &= ~0x3fff; \ | ||
234 | (pgd_t *)phys_to_virt(pg); \ | ||
235 | }) | ||
236 | |||
237 | #endif | ||
238 | |||
239 | #endif /* __ASSEMBLY__ */ | ||
240 | #endif /* __KERNEL__ */ | ||
241 | #endif /* __ASM_PROCFNS_H */ | ||