diff options
33 files changed, 144 insertions, 78 deletions
diff --git a/arch/arm/include/asm/glue.h b/arch/arm/include/asm/glue.h index a0e39d5d00c9..234a3fc1c78e 100644 --- a/arch/arm/include/asm/glue.h +++ b/arch/arm/include/asm/glue.h | |||
@@ -120,25 +120,39 @@ | |||
120 | #endif | 120 | #endif |
121 | 121 | ||
122 | /* | 122 | /* |
123 | * Prefetch abort handler. If the CPU has an IFAR use that, otherwise | 123 | * Prefetch Abort Model |
124 | * use the address of the aborted instruction | 124 | * ================ |
125 | * | ||
126 | * We have the following to choose from: | ||
127 | * legacy - no IFSR, no IFAR | ||
128 | * v6 - ARMv6: IFSR, no IFAR | ||
129 | * v7 - ARMv7: IFSR and IFAR | ||
125 | */ | 130 | */ |
131 | |||
126 | #undef CPU_PABORT_HANDLER | 132 | #undef CPU_PABORT_HANDLER |
127 | #undef MULTI_PABORT | 133 | #undef MULTI_PABORT |
128 | 134 | ||
129 | #ifdef CONFIG_CPU_PABRT_IFAR | 135 | #ifdef CONFIG_CPU_PABRT_LEGACY |
136 | # ifdef CPU_PABORT_HANDLER | ||
137 | # define MULTI_PABORT 1 | ||
138 | # else | ||
139 | # define CPU_PABORT_HANDLER legacy_pabort | ||
140 | # endif | ||
141 | #endif | ||
142 | |||
143 | #ifdef CONFIG_CPU_PABRT_V6 | ||
130 | # ifdef CPU_PABORT_HANDLER | 144 | # ifdef CPU_PABORT_HANDLER |
131 | # define MULTI_PABORT 1 | 145 | # define MULTI_PABORT 1 |
132 | # else | 146 | # else |
133 | # define CPU_PABORT_HANDLER(reg, insn) mrc p15, 0, reg, cr6, cr0, 2 | 147 | # define CPU_PABORT_HANDLER v6_pabort |
134 | # endif | 148 | # endif |
135 | #endif | 149 | #endif |
136 | 150 | ||
137 | #ifdef CONFIG_CPU_PABRT_NOIFAR | 151 | #ifdef CONFIG_CPU_PABRT_V7 |
138 | # ifdef CPU_PABORT_HANDLER | 152 | # ifdef CPU_PABORT_HANDLER |
139 | # define MULTI_PABORT 1 | 153 | # define MULTI_PABORT 1 |
140 | # else | 154 | # else |
141 | # define CPU_PABORT_HANDLER(reg, insn) mov reg, insn | 155 | # define CPU_PABORT_HANDLER v7_pabort |
142 | # endif | 156 | # endif |
143 | #endif | 157 | #endif |
144 | 158 | ||
diff --git a/arch/arm/kernel/entry-armv.S b/arch/arm/kernel/entry-armv.S index 0a2ba51cf35d..322410be573c 100644 --- a/arch/arm/kernel/entry-armv.S +++ b/arch/arm/kernel/entry-armv.S | |||
@@ -311,22 +311,16 @@ __pabt_svc: | |||
311 | tst r3, #PSR_I_BIT | 311 | tst r3, #PSR_I_BIT |
312 | biceq r9, r9, #PSR_I_BIT | 312 | biceq r9, r9, #PSR_I_BIT |
313 | 313 | ||
314 | @ | ||
315 | @ set args, then call main handler | ||
316 | @ | ||
317 | @ r0 - address of faulting instruction | ||
318 | @ r1 - pointer to registers on stack | ||
319 | @ | ||
320 | #ifdef MULTI_PABORT | ||
321 | mov r0, r2 @ pass address of aborted instruction. | 314 | mov r0, r2 @ pass address of aborted instruction. |
315 | #ifdef MULTI_PABORT | ||
322 | ldr r4, .LCprocfns | 316 | ldr r4, .LCprocfns |
323 | mov lr, pc | 317 | mov lr, pc |
324 | ldr pc, [r4, #PROCESSOR_PABT_FUNC] | 318 | ldr pc, [r4, #PROCESSOR_PABT_FUNC] |
325 | #else | 319 | #else |
326 | CPU_PABORT_HANDLER(r0, r2) | 320 | bl CPU_PABORT_HANDLER |
327 | #endif | 321 | #endif |
328 | msr cpsr_c, r9 @ Maybe enable interrupts | 322 | msr cpsr_c, r9 @ Maybe enable interrupts |
329 | mov r1, sp @ regs | 323 | mov r2, sp @ regs |
330 | bl do_PrefetchAbort @ call abort handler | 324 | bl do_PrefetchAbort @ call abort handler |
331 | 325 | ||
332 | @ | 326 | @ |
@@ -701,16 +695,16 @@ ENDPROC(__und_usr_unknown) | |||
701 | __pabt_usr: | 695 | __pabt_usr: |
702 | usr_entry | 696 | usr_entry |
703 | 697 | ||
704 | #ifdef MULTI_PABORT | ||
705 | mov r0, r2 @ pass address of aborted instruction. | 698 | mov r0, r2 @ pass address of aborted instruction. |
699 | #ifdef MULTI_PABORT | ||
706 | ldr r4, .LCprocfns | 700 | ldr r4, .LCprocfns |
707 | mov lr, pc | 701 | mov lr, pc |
708 | ldr pc, [r4, #PROCESSOR_PABT_FUNC] | 702 | ldr pc, [r4, #PROCESSOR_PABT_FUNC] |
709 | #else | 703 | #else |
710 | CPU_PABORT_HANDLER(r0, r2) | 704 | bl CPU_PABORT_HANDLER |
711 | #endif | 705 | #endif |
712 | enable_irq @ Enable interrupts | 706 | enable_irq @ Enable interrupts |
713 | mov r1, sp @ regs | 707 | mov r2, sp @ regs |
714 | bl do_PrefetchAbort @ call abort handler | 708 | bl do_PrefetchAbort @ call abort handler |
715 | UNWIND(.fnend ) | 709 | UNWIND(.fnend ) |
716 | /* fall through */ | 710 | /* fall through */ |
diff --git a/arch/arm/kernel/entry-common.S b/arch/arm/kernel/entry-common.S index 825db52e558a..f0fe95b7085d 100644 --- a/arch/arm/kernel/entry-common.S +++ b/arch/arm/kernel/entry-common.S | |||
@@ -425,13 +425,6 @@ sys_mmap2: | |||
425 | #endif | 425 | #endif |
426 | ENDPROC(sys_mmap2) | 426 | ENDPROC(sys_mmap2) |
427 | 427 | ||
428 | ENTRY(pabort_ifar) | ||
429 | mrc p15, 0, r0, cr6, cr0, 2 | ||
430 | ENTRY(pabort_noifar) | ||
431 | mov pc, lr | ||
432 | ENDPROC(pabort_ifar) | ||
433 | ENDPROC(pabort_noifar) | ||
434 | |||
435 | #ifdef CONFIG_OABI_COMPAT | 428 | #ifdef CONFIG_OABI_COMPAT |
436 | 429 | ||
437 | /* | 430 | /* |
diff --git a/arch/arm/mm/Kconfig b/arch/arm/mm/Kconfig index 8d43e58f9244..e993140edd88 100644 --- a/arch/arm/mm/Kconfig +++ b/arch/arm/mm/Kconfig | |||
@@ -17,7 +17,7 @@ config CPU_ARM610 | |||
17 | select CPU_CP15_MMU | 17 | select CPU_CP15_MMU |
18 | select CPU_COPY_V3 if MMU | 18 | select CPU_COPY_V3 if MMU |
19 | select CPU_TLB_V3 if MMU | 19 | select CPU_TLB_V3 if MMU |
20 | select CPU_PABRT_NOIFAR | 20 | select CPU_PABRT_LEGACY |
21 | help | 21 | help |
22 | The ARM610 is the successor to the ARM3 processor | 22 | The ARM610 is the successor to the ARM3 processor |
23 | and was produced by VLSI Technology Inc. | 23 | and was produced by VLSI Technology Inc. |
@@ -31,7 +31,7 @@ config CPU_ARM7TDMI | |||
31 | depends on !MMU | 31 | depends on !MMU |
32 | select CPU_32v4T | 32 | select CPU_32v4T |
33 | select CPU_ABRT_LV4T | 33 | select CPU_ABRT_LV4T |
34 | select CPU_PABRT_NOIFAR | 34 | select CPU_PABRT_LEGACY |
35 | select CPU_CACHE_V4 | 35 | select CPU_CACHE_V4 |
36 | help | 36 | help |
37 | A 32-bit RISC microprocessor based on the ARM7 processor core | 37 | A 32-bit RISC microprocessor based on the ARM7 processor core |
@@ -49,7 +49,7 @@ config CPU_ARM710 | |||
49 | select CPU_CP15_MMU | 49 | select CPU_CP15_MMU |
50 | select CPU_COPY_V3 if MMU | 50 | select CPU_COPY_V3 if MMU |
51 | select CPU_TLB_V3 if MMU | 51 | select CPU_TLB_V3 if MMU |
52 | select CPU_PABRT_NOIFAR | 52 | select CPU_PABRT_LEGACY |
53 | help | 53 | help |
54 | A 32-bit RISC microprocessor based on the ARM7 processor core | 54 | A 32-bit RISC microprocessor based on the ARM7 processor core |
55 | designed by Advanced RISC Machines Ltd. The ARM710 is the | 55 | designed by Advanced RISC Machines Ltd. The ARM710 is the |
@@ -64,7 +64,7 @@ config CPU_ARM720T | |||
64 | bool "Support ARM720T processor" if ARCH_INTEGRATOR | 64 | bool "Support ARM720T processor" if ARCH_INTEGRATOR |
65 | select CPU_32v4T | 65 | select CPU_32v4T |
66 | select CPU_ABRT_LV4T | 66 | select CPU_ABRT_LV4T |
67 | select CPU_PABRT_NOIFAR | 67 | select CPU_PABRT_LEGACY |
68 | select CPU_CACHE_V4 | 68 | select CPU_CACHE_V4 |
69 | select CPU_CACHE_VIVT | 69 | select CPU_CACHE_VIVT |
70 | select CPU_CP15_MMU | 70 | select CPU_CP15_MMU |
@@ -83,7 +83,7 @@ config CPU_ARM740T | |||
83 | depends on !MMU | 83 | depends on !MMU |
84 | select CPU_32v4T | 84 | select CPU_32v4T |
85 | select CPU_ABRT_LV4T | 85 | select CPU_ABRT_LV4T |
86 | select CPU_PABRT_NOIFAR | 86 | select CPU_PABRT_LEGACY |
87 | select CPU_CACHE_V3 # although the core is v4t | 87 | select CPU_CACHE_V3 # although the core is v4t |
88 | select CPU_CP15_MPU | 88 | select CPU_CP15_MPU |
89 | help | 89 | help |
@@ -100,7 +100,7 @@ config CPU_ARM9TDMI | |||
100 | depends on !MMU | 100 | depends on !MMU |
101 | select CPU_32v4T | 101 | select CPU_32v4T |
102 | select CPU_ABRT_NOMMU | 102 | select CPU_ABRT_NOMMU |
103 | select CPU_PABRT_NOIFAR | 103 | select CPU_PABRT_LEGACY |
104 | select CPU_CACHE_V4 | 104 | select CPU_CACHE_V4 |
105 | help | 105 | help |
106 | A 32-bit RISC microprocessor based on the ARM9 processor core | 106 | A 32-bit RISC microprocessor based on the ARM9 processor core |
@@ -114,7 +114,7 @@ config CPU_ARM920T | |||
114 | bool "Support ARM920T processor" if ARCH_INTEGRATOR | 114 | bool "Support ARM920T processor" if ARCH_INTEGRATOR |
115 | select CPU_32v4T | 115 | select CPU_32v4T |
116 | select CPU_ABRT_EV4T | 116 | select CPU_ABRT_EV4T |
117 | select CPU_PABRT_NOIFAR | 117 | select CPU_PABRT_LEGACY |
118 | select CPU_CACHE_V4WT | 118 | select CPU_CACHE_V4WT |
119 | select CPU_CACHE_VIVT | 119 | select CPU_CACHE_VIVT |
120 | select CPU_CP15_MMU | 120 | select CPU_CP15_MMU |
@@ -135,7 +135,7 @@ config CPU_ARM922T | |||
135 | bool "Support ARM922T processor" if ARCH_INTEGRATOR | 135 | bool "Support ARM922T processor" if ARCH_INTEGRATOR |
136 | select CPU_32v4T | 136 | select CPU_32v4T |
137 | select CPU_ABRT_EV4T | 137 | select CPU_ABRT_EV4T |
138 | select CPU_PABRT_NOIFAR | 138 | select CPU_PABRT_LEGACY |
139 | select CPU_CACHE_V4WT | 139 | select CPU_CACHE_V4WT |
140 | select CPU_CACHE_VIVT | 140 | select CPU_CACHE_VIVT |
141 | select CPU_CP15_MMU | 141 | select CPU_CP15_MMU |
@@ -154,7 +154,7 @@ config CPU_ARM925T | |||
154 | bool "Support ARM925T processor" if ARCH_OMAP1 | 154 | bool "Support ARM925T processor" if ARCH_OMAP1 |
155 | select CPU_32v4T | 155 | select CPU_32v4T |
156 | select CPU_ABRT_EV4T | 156 | select CPU_ABRT_EV4T |
157 | select CPU_PABRT_NOIFAR | 157 | select CPU_PABRT_LEGACY |
158 | select CPU_CACHE_V4WT | 158 | select CPU_CACHE_V4WT |
159 | select CPU_CACHE_VIVT | 159 | select CPU_CACHE_VIVT |
160 | select CPU_CP15_MMU | 160 | select CPU_CP15_MMU |
@@ -173,7 +173,7 @@ config CPU_ARM926T | |||
173 | bool "Support ARM926T processor" if ARCH_INTEGRATOR || MACH_REALVIEW_EB | 173 | bool "Support ARM926T processor" if ARCH_INTEGRATOR || MACH_REALVIEW_EB |
174 | select CPU_32v5 | 174 | select CPU_32v5 |
175 | select CPU_ABRT_EV5TJ | 175 | select CPU_ABRT_EV5TJ |
176 | select CPU_PABRT_NOIFAR | 176 | select CPU_PABRT_LEGACY |
177 | select CPU_CACHE_VIVT | 177 | select CPU_CACHE_VIVT |
178 | select CPU_CP15_MMU | 178 | select CPU_CP15_MMU |
179 | select CPU_COPY_V4WB if MMU | 179 | select CPU_COPY_V4WB if MMU |
@@ -191,7 +191,7 @@ config CPU_FA526 | |||
191 | bool | 191 | bool |
192 | select CPU_32v4 | 192 | select CPU_32v4 |
193 | select CPU_ABRT_EV4 | 193 | select CPU_ABRT_EV4 |
194 | select CPU_PABRT_NOIFAR | 194 | select CPU_PABRT_LEGACY |
195 | select CPU_CACHE_VIVT | 195 | select CPU_CACHE_VIVT |
196 | select CPU_CP15_MMU | 196 | select CPU_CP15_MMU |
197 | select CPU_CACHE_FA | 197 | select CPU_CACHE_FA |
@@ -210,7 +210,7 @@ config CPU_ARM940T | |||
210 | depends on !MMU | 210 | depends on !MMU |
211 | select CPU_32v4T | 211 | select CPU_32v4T |
212 | select CPU_ABRT_NOMMU | 212 | select CPU_ABRT_NOMMU |
213 | select CPU_PABRT_NOIFAR | 213 | select CPU_PABRT_LEGACY |
214 | select CPU_CACHE_VIVT | 214 | select CPU_CACHE_VIVT |
215 | select CPU_CP15_MPU | 215 | select CPU_CP15_MPU |
216 | help | 216 | help |
@@ -228,7 +228,7 @@ config CPU_ARM946E | |||
228 | depends on !MMU | 228 | depends on !MMU |
229 | select CPU_32v5 | 229 | select CPU_32v5 |
230 | select CPU_ABRT_NOMMU | 230 | select CPU_ABRT_NOMMU |
231 | select CPU_PABRT_NOIFAR | 231 | select CPU_PABRT_LEGACY |
232 | select CPU_CACHE_VIVT | 232 | select CPU_CACHE_VIVT |
233 | select CPU_CP15_MPU | 233 | select CPU_CP15_MPU |
234 | help | 234 | help |
@@ -244,7 +244,7 @@ config CPU_ARM1020 | |||
244 | bool "Support ARM1020T (rev 0) processor" if ARCH_INTEGRATOR | 244 | bool "Support ARM1020T (rev 0) processor" if ARCH_INTEGRATOR |
245 | select CPU_32v5 | 245 | select CPU_32v5 |
246 | select CPU_ABRT_EV4T | 246 | select CPU_ABRT_EV4T |
247 | select CPU_PABRT_NOIFAR | 247 | select CPU_PABRT_LEGACY |
248 | select CPU_CACHE_V4WT | 248 | select CPU_CACHE_V4WT |
249 | select CPU_CACHE_VIVT | 249 | select CPU_CACHE_VIVT |
250 | select CPU_CP15_MMU | 250 | select CPU_CP15_MMU |
@@ -262,7 +262,7 @@ config CPU_ARM1020E | |||
262 | bool "Support ARM1020E processor" if ARCH_INTEGRATOR | 262 | bool "Support ARM1020E processor" if ARCH_INTEGRATOR |
263 | select CPU_32v5 | 263 | select CPU_32v5 |
264 | select CPU_ABRT_EV4T | 264 | select CPU_ABRT_EV4T |
265 | select CPU_PABRT_NOIFAR | 265 | select CPU_PABRT_LEGACY |
266 | select CPU_CACHE_V4WT | 266 | select CPU_CACHE_V4WT |
267 | select CPU_CACHE_VIVT | 267 | select CPU_CACHE_VIVT |
268 | select CPU_CP15_MMU | 268 | select CPU_CP15_MMU |
@@ -275,7 +275,7 @@ config CPU_ARM1022 | |||
275 | bool "Support ARM1022E processor" if ARCH_INTEGRATOR | 275 | bool "Support ARM1022E processor" if ARCH_INTEGRATOR |
276 | select CPU_32v5 | 276 | select CPU_32v5 |
277 | select CPU_ABRT_EV4T | 277 | select CPU_ABRT_EV4T |
278 | select CPU_PABRT_NOIFAR | 278 | select CPU_PABRT_LEGACY |
279 | select CPU_CACHE_VIVT | 279 | select CPU_CACHE_VIVT |
280 | select CPU_CP15_MMU | 280 | select CPU_CP15_MMU |
281 | select CPU_COPY_V4WB if MMU # can probably do better | 281 | select CPU_COPY_V4WB if MMU # can probably do better |
@@ -293,7 +293,7 @@ config CPU_ARM1026 | |||
293 | bool "Support ARM1026EJ-S processor" if ARCH_INTEGRATOR | 293 | bool "Support ARM1026EJ-S processor" if ARCH_INTEGRATOR |
294 | select CPU_32v5 | 294 | select CPU_32v5 |
295 | select CPU_ABRT_EV5T # But need Jazelle, but EV5TJ ignores bit 10 | 295 | select CPU_ABRT_EV5T # But need Jazelle, but EV5TJ ignores bit 10 |
296 | select CPU_PABRT_NOIFAR | 296 | select CPU_PABRT_LEGACY |
297 | select CPU_CACHE_VIVT | 297 | select CPU_CACHE_VIVT |
298 | select CPU_CP15_MMU | 298 | select CPU_CP15_MMU |
299 | select CPU_COPY_V4WB if MMU # can probably do better | 299 | select CPU_COPY_V4WB if MMU # can probably do better |
@@ -311,7 +311,7 @@ config CPU_SA110 | |||
311 | select CPU_32v3 if ARCH_RPC | 311 | select CPU_32v3 if ARCH_RPC |
312 | select CPU_32v4 if !ARCH_RPC | 312 | select CPU_32v4 if !ARCH_RPC |
313 | select CPU_ABRT_EV4 | 313 | select CPU_ABRT_EV4 |
314 | select CPU_PABRT_NOIFAR | 314 | select CPU_PABRT_LEGACY |
315 | select CPU_CACHE_V4WB | 315 | select CPU_CACHE_V4WB |
316 | select CPU_CACHE_VIVT | 316 | select CPU_CACHE_VIVT |
317 | select CPU_CP15_MMU | 317 | select CPU_CP15_MMU |
@@ -331,7 +331,7 @@ config CPU_SA1100 | |||
331 | bool | 331 | bool |
332 | select CPU_32v4 | 332 | select CPU_32v4 |
333 | select CPU_ABRT_EV4 | 333 | select CPU_ABRT_EV4 |
334 | select CPU_PABRT_NOIFAR | 334 | select CPU_PABRT_LEGACY |
335 | select CPU_CACHE_V4WB | 335 | select CPU_CACHE_V4WB |
336 | select CPU_CACHE_VIVT | 336 | select CPU_CACHE_VIVT |
337 | select CPU_CP15_MMU | 337 | select CPU_CP15_MMU |
@@ -342,7 +342,7 @@ config CPU_XSCALE | |||
342 | bool | 342 | bool |
343 | select CPU_32v5 | 343 | select CPU_32v5 |
344 | select CPU_ABRT_EV5T | 344 | select CPU_ABRT_EV5T |
345 | select CPU_PABRT_NOIFAR | 345 | select CPU_PABRT_LEGACY |
346 | select CPU_CACHE_VIVT | 346 | select CPU_CACHE_VIVT |
347 | select CPU_CP15_MMU | 347 | select CPU_CP15_MMU |
348 | select CPU_TLB_V4WBI if MMU | 348 | select CPU_TLB_V4WBI if MMU |
@@ -352,7 +352,7 @@ config CPU_XSC3 | |||
352 | bool | 352 | bool |
353 | select CPU_32v5 | 353 | select CPU_32v5 |
354 | select CPU_ABRT_EV5T | 354 | select CPU_ABRT_EV5T |
355 | select CPU_PABRT_NOIFAR | 355 | select CPU_PABRT_LEGACY |
356 | select CPU_CACHE_VIVT | 356 | select CPU_CACHE_VIVT |
357 | select CPU_CP15_MMU | 357 | select CPU_CP15_MMU |
358 | select CPU_TLB_V4WBI if MMU | 358 | select CPU_TLB_V4WBI if MMU |
@@ -363,7 +363,7 @@ config CPU_MOHAWK | |||
363 | bool | 363 | bool |
364 | select CPU_32v5 | 364 | select CPU_32v5 |
365 | select CPU_ABRT_EV5T | 365 | select CPU_ABRT_EV5T |
366 | select CPU_PABRT_NOIFAR | 366 | select CPU_PABRT_LEGACY |
367 | select CPU_CACHE_VIVT | 367 | select CPU_CACHE_VIVT |
368 | select CPU_CP15_MMU | 368 | select CPU_CP15_MMU |
369 | select CPU_TLB_V4WBI if MMU | 369 | select CPU_TLB_V4WBI if MMU |
@@ -374,7 +374,7 @@ config CPU_FEROCEON | |||
374 | bool | 374 | bool |
375 | select CPU_32v5 | 375 | select CPU_32v5 |
376 | select CPU_ABRT_EV5T | 376 | select CPU_ABRT_EV5T |
377 | select CPU_PABRT_NOIFAR | 377 | select CPU_PABRT_LEGACY |
378 | select CPU_CACHE_VIVT | 378 | select CPU_CACHE_VIVT |
379 | select CPU_CP15_MMU | 379 | select CPU_CP15_MMU |
380 | select CPU_COPY_FEROCEON if MMU | 380 | select CPU_COPY_FEROCEON if MMU |
@@ -394,7 +394,7 @@ config CPU_V6 | |||
394 | bool "Support ARM V6 processor" if ARCH_INTEGRATOR || MACH_REALVIEW_EB || MACH_REALVIEW_PBX | 394 | bool "Support ARM V6 processor" if ARCH_INTEGRATOR || MACH_REALVIEW_EB || MACH_REALVIEW_PBX |
395 | select CPU_32v6 | 395 | select CPU_32v6 |
396 | select CPU_ABRT_EV6 | 396 | select CPU_ABRT_EV6 |
397 | select CPU_PABRT_NOIFAR | 397 | select CPU_PABRT_V6 |
398 | select CPU_CACHE_V6 | 398 | select CPU_CACHE_V6 |
399 | select CPU_CACHE_VIPT | 399 | select CPU_CACHE_VIPT |
400 | select CPU_CP15_MMU | 400 | select CPU_CP15_MMU |
@@ -420,7 +420,7 @@ config CPU_V7 | |||
420 | select CPU_32v6K | 420 | select CPU_32v6K |
421 | select CPU_32v7 | 421 | select CPU_32v7 |
422 | select CPU_ABRT_EV7 | 422 | select CPU_ABRT_EV7 |
423 | select CPU_PABRT_IFAR | 423 | select CPU_PABRT_V7 |
424 | select CPU_CACHE_V7 | 424 | select CPU_CACHE_V7 |
425 | select CPU_CACHE_VIPT | 425 | select CPU_CACHE_VIPT |
426 | select CPU_CP15_MMU | 426 | select CPU_CP15_MMU |
@@ -482,10 +482,13 @@ config CPU_ABRT_EV6 | |||
482 | config CPU_ABRT_EV7 | 482 | config CPU_ABRT_EV7 |
483 | bool | 483 | bool |
484 | 484 | ||
485 | config CPU_PABRT_IFAR | 485 | config CPU_PABRT_LEGACY |
486 | bool | 486 | bool |
487 | 487 | ||
488 | config CPU_PABRT_NOIFAR | 488 | config CPU_PABRT_V6 |
489 | bool | ||
490 | |||
491 | config CPU_PABRT_V7 | ||
489 | bool | 492 | bool |
490 | 493 | ||
491 | # The cache model | 494 | # The cache model |
diff --git a/arch/arm/mm/Makefile b/arch/arm/mm/Makefile index 63e3f6dd0e21..055cb2aa8134 100644 --- a/arch/arm/mm/Makefile +++ b/arch/arm/mm/Makefile | |||
@@ -27,6 +27,10 @@ obj-$(CONFIG_CPU_ABRT_EV5TJ) += abort-ev5tj.o | |||
27 | obj-$(CONFIG_CPU_ABRT_EV6) += abort-ev6.o | 27 | obj-$(CONFIG_CPU_ABRT_EV6) += abort-ev6.o |
28 | obj-$(CONFIG_CPU_ABRT_EV7) += abort-ev7.o | 28 | obj-$(CONFIG_CPU_ABRT_EV7) += abort-ev7.o |
29 | 29 | ||
30 | obj-$(CONFIG_CPU_PABRT_LEGACY) += pabort-legacy.o | ||
31 | obj-$(CONFIG_CPU_PABRT_V6) += pabort-v6.o | ||
32 | obj-$(CONFIG_CPU_PABRT_V7) += pabort-v7.o | ||
33 | |||
30 | obj-$(CONFIG_CPU_CACHE_V3) += cache-v3.o | 34 | obj-$(CONFIG_CPU_CACHE_V3) += cache-v3.o |
31 | obj-$(CONFIG_CPU_CACHE_V4) += cache-v4.o | 35 | obj-$(CONFIG_CPU_CACHE_V4) += cache-v4.o |
32 | obj-$(CONFIG_CPU_CACHE_V4WT) += cache-v4wt.o | 36 | obj-$(CONFIG_CPU_CACHE_V4WT) += cache-v4wt.o |
diff --git a/arch/arm/mm/fault.c b/arch/arm/mm/fault.c index 379f78556055..fd2375f84994 100644 --- a/arch/arm/mm/fault.c +++ b/arch/arm/mm/fault.c | |||
@@ -520,7 +520,7 @@ do_DataAbort(unsigned long addr, unsigned int fsr, struct pt_regs *regs) | |||
520 | } | 520 | } |
521 | 521 | ||
522 | asmlinkage void __exception | 522 | asmlinkage void __exception |
523 | do_PrefetchAbort(unsigned long addr, struct pt_regs *regs) | 523 | do_PrefetchAbort(unsigned long addr, unsigned int ifsr, struct pt_regs *regs) |
524 | { | 524 | { |
525 | do_translation_fault(addr, FSR_LNX_PF, regs); | 525 | do_translation_fault(addr, FSR_LNX_PF, regs); |
526 | } | 526 | } |
diff --git a/arch/arm/mm/pabort-legacy.S b/arch/arm/mm/pabort-legacy.S new file mode 100644 index 000000000000..87970eba88ea --- /dev/null +++ b/arch/arm/mm/pabort-legacy.S | |||
@@ -0,0 +1,19 @@ | |||
1 | #include <linux/linkage.h> | ||
2 | #include <asm/assembler.h> | ||
3 | |||
4 | /* | ||
5 | * Function: legacy_pabort | ||
6 | * | ||
7 | * Params : r0 = address of aborted instruction | ||
8 | * | ||
9 | * Returns : r0 = address of abort | ||
10 | * : r1 = Simulated IFSR with section translation fault status | ||
11 | * | ||
12 | * Purpose : obtain information about current prefetch abort. | ||
13 | */ | ||
14 | |||
15 | .align 5 | ||
16 | ENTRY(legacy_pabort) | ||
17 | mov r1, #5 | ||
18 | mov pc, lr | ||
19 | ENDPROC(legacy_pabort) | ||
diff --git a/arch/arm/mm/pabort-v6.S b/arch/arm/mm/pabort-v6.S new file mode 100644 index 000000000000..06e3d1ef2115 --- /dev/null +++ b/arch/arm/mm/pabort-v6.S | |||
@@ -0,0 +1,19 @@ | |||
1 | #include <linux/linkage.h> | ||
2 | #include <asm/assembler.h> | ||
3 | |||
4 | /* | ||
5 | * Function: v6_pabort | ||
6 | * | ||
7 | * Params : r0 = address of aborted instruction | ||
8 | * | ||
9 | * Returns : r0 = address of abort | ||
10 | * : r1 = IFSR | ||
11 | * | ||
12 | * Purpose : obtain information about current prefetch abort. | ||
13 | */ | ||
14 | |||
15 | .align 5 | ||
16 | ENTRY(v6_pabort) | ||
17 | mrc p15, 0, r1, c5, c0, 1 @ get IFSR | ||
18 | mov pc, lr | ||
19 | ENDPROC(v6_pabort) | ||
diff --git a/arch/arm/mm/pabort-v7.S b/arch/arm/mm/pabort-v7.S new file mode 100644 index 000000000000..a8b3b300a18d --- /dev/null +++ b/arch/arm/mm/pabort-v7.S | |||
@@ -0,0 +1,20 @@ | |||
1 | #include <linux/linkage.h> | ||
2 | #include <asm/assembler.h> | ||
3 | |||
4 | /* | ||
5 | * Function: v6_pabort | ||
6 | * | ||
7 | * Params : r0 = address of aborted instruction | ||
8 | * | ||
9 | * Returns : r0 = address of abort | ||
10 | * : r1 = IFSR | ||
11 | * | ||
12 | * Purpose : obtain information about current prefetch abort. | ||
13 | */ | ||
14 | |||
15 | .align 5 | ||
16 | ENTRY(v7_pabort) | ||
17 | mrc p15, 0, r0, c6, c0, 2 @ get IFAR | ||
18 | mrc p15, 0, r1, c5, c0, 1 @ get IFSR | ||
19 | mov pc, lr | ||
20 | ENDPROC(v7_pabort) | ||
diff --git a/arch/arm/mm/proc-arm1020.S b/arch/arm/mm/proc-arm1020.S index b5551bf010aa..d9fb4b98c49f 100644 --- a/arch/arm/mm/proc-arm1020.S +++ b/arch/arm/mm/proc-arm1020.S | |||
@@ -449,7 +449,7 @@ arm1020_crval: | |||
449 | .type arm1020_processor_functions, #object | 449 | .type arm1020_processor_functions, #object |
450 | arm1020_processor_functions: | 450 | arm1020_processor_functions: |
451 | .word v4t_early_abort | 451 | .word v4t_early_abort |
452 | .word pabort_noifar | 452 | .word legacy_pabort |
453 | .word cpu_arm1020_proc_init | 453 | .word cpu_arm1020_proc_init |
454 | .word cpu_arm1020_proc_fin | 454 | .word cpu_arm1020_proc_fin |
455 | .word cpu_arm1020_reset | 455 | .word cpu_arm1020_reset |
diff --git a/arch/arm/mm/proc-arm1020e.S b/arch/arm/mm/proc-arm1020e.S index 8bc6740c29eb..7453b75dcea5 100644 --- a/arch/arm/mm/proc-arm1020e.S +++ b/arch/arm/mm/proc-arm1020e.S | |||
@@ -430,7 +430,7 @@ arm1020e_crval: | |||
430 | .type arm1020e_processor_functions, #object | 430 | .type arm1020e_processor_functions, #object |
431 | arm1020e_processor_functions: | 431 | arm1020e_processor_functions: |
432 | .word v4t_early_abort | 432 | .word v4t_early_abort |
433 | .word pabort_noifar | 433 | .word legacy_pabort |
434 | .word cpu_arm1020e_proc_init | 434 | .word cpu_arm1020e_proc_init |
435 | .word cpu_arm1020e_proc_fin | 435 | .word cpu_arm1020e_proc_fin |
436 | .word cpu_arm1020e_reset | 436 | .word cpu_arm1020e_reset |
diff --git a/arch/arm/mm/proc-arm1022.S b/arch/arm/mm/proc-arm1022.S index 2cd03e66c0a3..8eb72d75a8b6 100644 --- a/arch/arm/mm/proc-arm1022.S +++ b/arch/arm/mm/proc-arm1022.S | |||
@@ -413,7 +413,7 @@ arm1022_crval: | |||
413 | .type arm1022_processor_functions, #object | 413 | .type arm1022_processor_functions, #object |
414 | arm1022_processor_functions: | 414 | arm1022_processor_functions: |
415 | .word v4t_early_abort | 415 | .word v4t_early_abort |
416 | .word pabort_noifar | 416 | .word legacy_pabort |
417 | .word cpu_arm1022_proc_init | 417 | .word cpu_arm1022_proc_init |
418 | .word cpu_arm1022_proc_fin | 418 | .word cpu_arm1022_proc_fin |
419 | .word cpu_arm1022_reset | 419 | .word cpu_arm1022_reset |
diff --git a/arch/arm/mm/proc-arm1026.S b/arch/arm/mm/proc-arm1026.S index ad961a897f6e..3b59f0d67139 100644 --- a/arch/arm/mm/proc-arm1026.S +++ b/arch/arm/mm/proc-arm1026.S | |||
@@ -408,7 +408,7 @@ arm1026_crval: | |||
408 | .type arm1026_processor_functions, #object | 408 | .type arm1026_processor_functions, #object |
409 | arm1026_processor_functions: | 409 | arm1026_processor_functions: |
410 | .word v5t_early_abort | 410 | .word v5t_early_abort |
411 | .word pabort_noifar | 411 | .word legacy_pabort |
412 | .word cpu_arm1026_proc_init | 412 | .word cpu_arm1026_proc_init |
413 | .word cpu_arm1026_proc_fin | 413 | .word cpu_arm1026_proc_fin |
414 | .word cpu_arm1026_reset | 414 | .word cpu_arm1026_reset |
diff --git a/arch/arm/mm/proc-arm6_7.S b/arch/arm/mm/proc-arm6_7.S index 80d6e1de069a..3f9cd3d8f6d5 100644 --- a/arch/arm/mm/proc-arm6_7.S +++ b/arch/arm/mm/proc-arm6_7.S | |||
@@ -278,7 +278,7 @@ __arm7_setup: mov r0, #0 | |||
278 | .type arm6_processor_functions, #object | 278 | .type arm6_processor_functions, #object |
279 | ENTRY(arm6_processor_functions) | 279 | ENTRY(arm6_processor_functions) |
280 | .word cpu_arm6_data_abort | 280 | .word cpu_arm6_data_abort |
281 | .word pabort_noifar | 281 | .word legacy_pabort |
282 | .word cpu_arm6_proc_init | 282 | .word cpu_arm6_proc_init |
283 | .word cpu_arm6_proc_fin | 283 | .word cpu_arm6_proc_fin |
284 | .word cpu_arm6_reset | 284 | .word cpu_arm6_reset |
@@ -295,7 +295,7 @@ ENTRY(arm6_processor_functions) | |||
295 | .type arm7_processor_functions, #object | 295 | .type arm7_processor_functions, #object |
296 | ENTRY(arm7_processor_functions) | 296 | ENTRY(arm7_processor_functions) |
297 | .word cpu_arm7_data_abort | 297 | .word cpu_arm7_data_abort |
298 | .word pabort_noifar | 298 | .word legacy_pabort |
299 | .word cpu_arm7_proc_init | 299 | .word cpu_arm7_proc_init |
300 | .word cpu_arm7_proc_fin | 300 | .word cpu_arm7_proc_fin |
301 | .word cpu_arm7_reset | 301 | .word cpu_arm7_reset |
diff --git a/arch/arm/mm/proc-arm720.S b/arch/arm/mm/proc-arm720.S index 85ae18695f10..0b62de244666 100644 --- a/arch/arm/mm/proc-arm720.S +++ b/arch/arm/mm/proc-arm720.S | |||
@@ -181,7 +181,7 @@ arm720_crval: | |||
181 | .type arm720_processor_functions, #object | 181 | .type arm720_processor_functions, #object |
182 | ENTRY(arm720_processor_functions) | 182 | ENTRY(arm720_processor_functions) |
183 | .word v4t_late_abort | 183 | .word v4t_late_abort |
184 | .word pabort_noifar | 184 | .word legacy_pabort |
185 | .word cpu_arm720_proc_init | 185 | .word cpu_arm720_proc_init |
186 | .word cpu_arm720_proc_fin | 186 | .word cpu_arm720_proc_fin |
187 | .word cpu_arm720_reset | 187 | .word cpu_arm720_reset |
diff --git a/arch/arm/mm/proc-arm740.S b/arch/arm/mm/proc-arm740.S index 4f95bee63e95..01860cdeb2ec 100644 --- a/arch/arm/mm/proc-arm740.S +++ b/arch/arm/mm/proc-arm740.S | |||
@@ -126,7 +126,7 @@ __arm740_setup: | |||
126 | .type arm740_processor_functions, #object | 126 | .type arm740_processor_functions, #object |
127 | ENTRY(arm740_processor_functions) | 127 | ENTRY(arm740_processor_functions) |
128 | .word v4t_late_abort | 128 | .word v4t_late_abort |
129 | .word pabort_noifar | 129 | .word legacy_pabort |
130 | .word cpu_arm740_proc_init | 130 | .word cpu_arm740_proc_init |
131 | .word cpu_arm740_proc_fin | 131 | .word cpu_arm740_proc_fin |
132 | .word cpu_arm740_reset | 132 | .word cpu_arm740_reset |
diff --git a/arch/arm/mm/proc-arm7tdmi.S b/arch/arm/mm/proc-arm7tdmi.S index 93e05fa7bed4..1201b9863829 100644 --- a/arch/arm/mm/proc-arm7tdmi.S +++ b/arch/arm/mm/proc-arm7tdmi.S | |||
@@ -64,7 +64,7 @@ __arm7tdmi_setup: | |||
64 | .type arm7tdmi_processor_functions, #object | 64 | .type arm7tdmi_processor_functions, #object |
65 | ENTRY(arm7tdmi_processor_functions) | 65 | ENTRY(arm7tdmi_processor_functions) |
66 | .word v4t_late_abort | 66 | .word v4t_late_abort |
67 | .word pabort_noifar | 67 | .word legacy_pabort |
68 | .word cpu_arm7tdmi_proc_init | 68 | .word cpu_arm7tdmi_proc_init |
69 | .word cpu_arm7tdmi_proc_fin | 69 | .word cpu_arm7tdmi_proc_fin |
70 | .word cpu_arm7tdmi_reset | 70 | .word cpu_arm7tdmi_reset |
diff --git a/arch/arm/mm/proc-arm920.S b/arch/arm/mm/proc-arm920.S index 914d688394fc..2b7c197cc58d 100644 --- a/arch/arm/mm/proc-arm920.S +++ b/arch/arm/mm/proc-arm920.S | |||
@@ -395,7 +395,7 @@ arm920_crval: | |||
395 | .type arm920_processor_functions, #object | 395 | .type arm920_processor_functions, #object |
396 | arm920_processor_functions: | 396 | arm920_processor_functions: |
397 | .word v4t_early_abort | 397 | .word v4t_early_abort |
398 | .word pabort_noifar | 398 | .word legacy_pabort |
399 | .word cpu_arm920_proc_init | 399 | .word cpu_arm920_proc_init |
400 | .word cpu_arm920_proc_fin | 400 | .word cpu_arm920_proc_fin |
401 | .word cpu_arm920_reset | 401 | .word cpu_arm920_reset |
diff --git a/arch/arm/mm/proc-arm922.S b/arch/arm/mm/proc-arm922.S index 51c9c9859e58..06a1aa4e3398 100644 --- a/arch/arm/mm/proc-arm922.S +++ b/arch/arm/mm/proc-arm922.S | |||
@@ -399,7 +399,7 @@ arm922_crval: | |||
399 | .type arm922_processor_functions, #object | 399 | .type arm922_processor_functions, #object |
400 | arm922_processor_functions: | 400 | arm922_processor_functions: |
401 | .word v4t_early_abort | 401 | .word v4t_early_abort |
402 | .word pabort_noifar | 402 | .word legacy_pabort |
403 | .word cpu_arm922_proc_init | 403 | .word cpu_arm922_proc_init |
404 | .word cpu_arm922_proc_fin | 404 | .word cpu_arm922_proc_fin |
405 | .word cpu_arm922_reset | 405 | .word cpu_arm922_reset |
diff --git a/arch/arm/mm/proc-arm925.S b/arch/arm/mm/proc-arm925.S index 2724526d89c1..cb53435a85ae 100644 --- a/arch/arm/mm/proc-arm925.S +++ b/arch/arm/mm/proc-arm925.S | |||
@@ -462,7 +462,7 @@ arm925_crval: | |||
462 | .type arm925_processor_functions, #object | 462 | .type arm925_processor_functions, #object |
463 | arm925_processor_functions: | 463 | arm925_processor_functions: |
464 | .word v4t_early_abort | 464 | .word v4t_early_abort |
465 | .word pabort_noifar | 465 | .word legacy_pabort |
466 | .word cpu_arm925_proc_init | 466 | .word cpu_arm925_proc_init |
467 | .word cpu_arm925_proc_fin | 467 | .word cpu_arm925_proc_fin |
468 | .word cpu_arm925_reset | 468 | .word cpu_arm925_reset |
diff --git a/arch/arm/mm/proc-arm926.S b/arch/arm/mm/proc-arm926.S index 54466937bff9..1c4848704bb3 100644 --- a/arch/arm/mm/proc-arm926.S +++ b/arch/arm/mm/proc-arm926.S | |||
@@ -415,7 +415,7 @@ arm926_crval: | |||
415 | .type arm926_processor_functions, #object | 415 | .type arm926_processor_functions, #object |
416 | arm926_processor_functions: | 416 | arm926_processor_functions: |
417 | .word v5tj_early_abort | 417 | .word v5tj_early_abort |
418 | .word pabort_noifar | 418 | .word legacy_pabort |
419 | .word cpu_arm926_proc_init | 419 | .word cpu_arm926_proc_init |
420 | .word cpu_arm926_proc_fin | 420 | .word cpu_arm926_proc_fin |
421 | .word cpu_arm926_reset | 421 | .word cpu_arm926_reset |
diff --git a/arch/arm/mm/proc-arm940.S b/arch/arm/mm/proc-arm940.S index f595117caf55..5b0f8464c8f2 100644 --- a/arch/arm/mm/proc-arm940.S +++ b/arch/arm/mm/proc-arm940.S | |||
@@ -322,7 +322,7 @@ __arm940_setup: | |||
322 | .type arm940_processor_functions, #object | 322 | .type arm940_processor_functions, #object |
323 | ENTRY(arm940_processor_functions) | 323 | ENTRY(arm940_processor_functions) |
324 | .word nommu_early_abort | 324 | .word nommu_early_abort |
325 | .word pabort_noifar | 325 | .word legacy_pabort |
326 | .word cpu_arm940_proc_init | 326 | .word cpu_arm940_proc_init |
327 | .word cpu_arm940_proc_fin | 327 | .word cpu_arm940_proc_fin |
328 | .word cpu_arm940_reset | 328 | .word cpu_arm940_reset |
diff --git a/arch/arm/mm/proc-arm946.S b/arch/arm/mm/proc-arm946.S index e03f6ff1fb26..40c0449a139b 100644 --- a/arch/arm/mm/proc-arm946.S +++ b/arch/arm/mm/proc-arm946.S | |||
@@ -377,7 +377,7 @@ __arm946_setup: | |||
377 | .type arm946_processor_functions, #object | 377 | .type arm946_processor_functions, #object |
378 | ENTRY(arm946_processor_functions) | 378 | ENTRY(arm946_processor_functions) |
379 | .word nommu_early_abort | 379 | .word nommu_early_abort |
380 | .word pabort_noifar | 380 | .word legacy_pabort |
381 | .word cpu_arm946_proc_init | 381 | .word cpu_arm946_proc_init |
382 | .word cpu_arm946_proc_fin | 382 | .word cpu_arm946_proc_fin |
383 | .word cpu_arm946_reset | 383 | .word cpu_arm946_reset |
diff --git a/arch/arm/mm/proc-arm9tdmi.S b/arch/arm/mm/proc-arm9tdmi.S index be6c11d2b3fb..28545c29dbcd 100644 --- a/arch/arm/mm/proc-arm9tdmi.S +++ b/arch/arm/mm/proc-arm9tdmi.S | |||
@@ -64,7 +64,7 @@ __arm9tdmi_setup: | |||
64 | .type arm9tdmi_processor_functions, #object | 64 | .type arm9tdmi_processor_functions, #object |
65 | ENTRY(arm9tdmi_processor_functions) | 65 | ENTRY(arm9tdmi_processor_functions) |
66 | .word nommu_early_abort | 66 | .word nommu_early_abort |
67 | .word pabort_noifar | 67 | .word legacy_pabort |
68 | .word cpu_arm9tdmi_proc_init | 68 | .word cpu_arm9tdmi_proc_init |
69 | .word cpu_arm9tdmi_proc_fin | 69 | .word cpu_arm9tdmi_proc_fin |
70 | .word cpu_arm9tdmi_reset | 70 | .word cpu_arm9tdmi_reset |
diff --git a/arch/arm/mm/proc-fa526.S b/arch/arm/mm/proc-fa526.S index 08b8a955d5d7..08f5ac237ad4 100644 --- a/arch/arm/mm/proc-fa526.S +++ b/arch/arm/mm/proc-fa526.S | |||
@@ -191,7 +191,7 @@ fa526_cr1_set: | |||
191 | .type fa526_processor_functions, #object | 191 | .type fa526_processor_functions, #object |
192 | fa526_processor_functions: | 192 | fa526_processor_functions: |
193 | .word v4_early_abort | 193 | .word v4_early_abort |
194 | .word pabort_noifar | 194 | .word legacy_pabort |
195 | .word cpu_fa526_proc_init | 195 | .word cpu_fa526_proc_init |
196 | .word cpu_fa526_proc_fin | 196 | .word cpu_fa526_proc_fin |
197 | .word cpu_fa526_reset | 197 | .word cpu_fa526_reset |
diff --git a/arch/arm/mm/proc-feroceon.S b/arch/arm/mm/proc-feroceon.S index 0fe1f8fc3488..d0d7795200fc 100644 --- a/arch/arm/mm/proc-feroceon.S +++ b/arch/arm/mm/proc-feroceon.S | |||
@@ -499,7 +499,7 @@ feroceon_crval: | |||
499 | .type feroceon_processor_functions, #object | 499 | .type feroceon_processor_functions, #object |
500 | feroceon_processor_functions: | 500 | feroceon_processor_functions: |
501 | .word v5t_early_abort | 501 | .word v5t_early_abort |
502 | .word pabort_noifar | 502 | .word legacy_pabort |
503 | .word cpu_feroceon_proc_init | 503 | .word cpu_feroceon_proc_init |
504 | .word cpu_feroceon_proc_fin | 504 | .word cpu_feroceon_proc_fin |
505 | .word cpu_feroceon_reset | 505 | .word cpu_feroceon_reset |
diff --git a/arch/arm/mm/proc-mohawk.S b/arch/arm/mm/proc-mohawk.S index 540f5078496b..52b5fd74fbb3 100644 --- a/arch/arm/mm/proc-mohawk.S +++ b/arch/arm/mm/proc-mohawk.S | |||
@@ -359,7 +359,7 @@ mohawk_crval: | |||
359 | .type mohawk_processor_functions, #object | 359 | .type mohawk_processor_functions, #object |
360 | mohawk_processor_functions: | 360 | mohawk_processor_functions: |
361 | .word v5t_early_abort | 361 | .word v5t_early_abort |
362 | .word pabort_noifar | 362 | .word legacy_pabort |
363 | .word cpu_mohawk_proc_init | 363 | .word cpu_mohawk_proc_init |
364 | .word cpu_mohawk_proc_fin | 364 | .word cpu_mohawk_proc_fin |
365 | .word cpu_mohawk_reset | 365 | .word cpu_mohawk_reset |
diff --git a/arch/arm/mm/proc-sa110.S b/arch/arm/mm/proc-sa110.S index 90a7e5279f29..7b706b389906 100644 --- a/arch/arm/mm/proc-sa110.S +++ b/arch/arm/mm/proc-sa110.S | |||
@@ -199,7 +199,7 @@ sa110_crval: | |||
199 | .type sa110_processor_functions, #object | 199 | .type sa110_processor_functions, #object |
200 | ENTRY(sa110_processor_functions) | 200 | ENTRY(sa110_processor_functions) |
201 | .word v4_early_abort | 201 | .word v4_early_abort |
202 | .word pabort_noifar | 202 | .word legacy_pabort |
203 | .word cpu_sa110_proc_init | 203 | .word cpu_sa110_proc_init |
204 | .word cpu_sa110_proc_fin | 204 | .word cpu_sa110_proc_fin |
205 | .word cpu_sa110_reset | 205 | .word cpu_sa110_reset |
diff --git a/arch/arm/mm/proc-sa1100.S b/arch/arm/mm/proc-sa1100.S index 451e2d953e2a..ee7700242c19 100644 --- a/arch/arm/mm/proc-sa1100.S +++ b/arch/arm/mm/proc-sa1100.S | |||
@@ -214,7 +214,7 @@ sa1100_crval: | |||
214 | .type sa1100_processor_functions, #object | 214 | .type sa1100_processor_functions, #object |
215 | ENTRY(sa1100_processor_functions) | 215 | ENTRY(sa1100_processor_functions) |
216 | .word v4_early_abort | 216 | .word v4_early_abort |
217 | .word pabort_noifar | 217 | .word legacy_pabort |
218 | .word cpu_sa1100_proc_init | 218 | .word cpu_sa1100_proc_init |
219 | .word cpu_sa1100_proc_fin | 219 | .word cpu_sa1100_proc_fin |
220 | .word cpu_sa1100_reset | 220 | .word cpu_sa1100_reset |
diff --git a/arch/arm/mm/proc-v6.S b/arch/arm/mm/proc-v6.S index 524ddae92595..194737d60a22 100644 --- a/arch/arm/mm/proc-v6.S +++ b/arch/arm/mm/proc-v6.S | |||
@@ -191,7 +191,7 @@ v6_crval: | |||
191 | .type v6_processor_functions, #object | 191 | .type v6_processor_functions, #object |
192 | ENTRY(v6_processor_functions) | 192 | ENTRY(v6_processor_functions) |
193 | .word v6_early_abort | 193 | .word v6_early_abort |
194 | .word pabort_noifar | 194 | .word v6_pabort |
195 | .word cpu_v6_proc_init | 195 | .word cpu_v6_proc_init |
196 | .word cpu_v6_proc_fin | 196 | .word cpu_v6_proc_fin |
197 | .word cpu_v6_reset | 197 | .word cpu_v6_reset |
diff --git a/arch/arm/mm/proc-v7.S b/arch/arm/mm/proc-v7.S index f3fa1c32fe92..23ebcf6eab9f 100644 --- a/arch/arm/mm/proc-v7.S +++ b/arch/arm/mm/proc-v7.S | |||
@@ -295,7 +295,7 @@ __v7_setup_stack: | |||
295 | .type v7_processor_functions, #object | 295 | .type v7_processor_functions, #object |
296 | ENTRY(v7_processor_functions) | 296 | ENTRY(v7_processor_functions) |
297 | .word v7_early_abort | 297 | .word v7_early_abort |
298 | .word pabort_ifar | 298 | .word v7_pabort |
299 | .word cpu_v7_proc_init | 299 | .word cpu_v7_proc_init |
300 | .word cpu_v7_proc_fin | 300 | .word cpu_v7_proc_fin |
301 | .word cpu_v7_reset | 301 | .word cpu_v7_reset |
diff --git a/arch/arm/mm/proc-xsc3.S b/arch/arm/mm/proc-xsc3.S index 33515c214b92..2028f3702881 100644 --- a/arch/arm/mm/proc-xsc3.S +++ b/arch/arm/mm/proc-xsc3.S | |||
@@ -428,7 +428,7 @@ xsc3_crval: | |||
428 | .type xsc3_processor_functions, #object | 428 | .type xsc3_processor_functions, #object |
429 | ENTRY(xsc3_processor_functions) | 429 | ENTRY(xsc3_processor_functions) |
430 | .word v5t_early_abort | 430 | .word v5t_early_abort |
431 | .word pabort_noifar | 431 | .word legacy_pabort |
432 | .word cpu_xsc3_proc_init | 432 | .word cpu_xsc3_proc_init |
433 | .word cpu_xsc3_proc_fin | 433 | .word cpu_xsc3_proc_fin |
434 | .word cpu_xsc3_reset | 434 | .word cpu_xsc3_reset |
diff --git a/arch/arm/mm/proc-xscale.S b/arch/arm/mm/proc-xscale.S index 423394260bcb..f056c283682d 100644 --- a/arch/arm/mm/proc-xscale.S +++ b/arch/arm/mm/proc-xscale.S | |||
@@ -511,7 +511,7 @@ xscale_crval: | |||
511 | .type xscale_processor_functions, #object | 511 | .type xscale_processor_functions, #object |
512 | ENTRY(xscale_processor_functions) | 512 | ENTRY(xscale_processor_functions) |
513 | .word v5t_early_abort | 513 | .word v5t_early_abort |
514 | .word pabort_noifar | 514 | .word legacy_pabort |
515 | .word cpu_xscale_proc_init | 515 | .word cpu_xscale_proc_init |
516 | .word cpu_xscale_proc_fin | 516 | .word cpu_xscale_proc_fin |
517 | .word cpu_xscale_reset | 517 | .word cpu_xscale_reset |