Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ARM: 5727/1: Pass IFSR register to do_PrefetchAbort()

Instruction fault status register, IFSR, was introduced on ARMv6 to
provide status information about the last insturction fault. It
needed for proper prefetch abort handling.

Now we have three prefetch abort model:

* legacy - for CPUs before ARMv6. They doesn't provide neither
IFSR nor IFAR. We simulate IFSR with section translation fault
status for them to generalize code;
* ARMv6 - provides IFSR, but not IFAR;
* ARMv7 - provides both IFSR and IFAR.

Signed-off-by: Kirill A. Shutemov <kirill@shutemov.name>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>

authored by

Kirill A. Shutemov and committed by
Russell King
4fb28474 6806bfe1

+144 -78
+20 -6
arch/arm/include/asm/glue.h
··· 120 120 #endif 121 121 122 122 /* 123 - * Prefetch abort handler. If the CPU has an IFAR use that, otherwise 124 - * use the address of the aborted instruction 123 + * Prefetch Abort Model 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 132 #undef CPU_PABORT_HANDLER 127 133 #undef MULTI_PABORT 128 134 129 - #ifdef CONFIG_CPU_PABRT_IFAR 135 + #ifdef CONFIG_CPU_PABRT_LEGACY 130 136 # ifdef CPU_PABORT_HANDLER 131 137 # define MULTI_PABORT 1 132 138 # else 133 - # define CPU_PABORT_HANDLER(reg, insn) mrc p15, 0, reg, cr6, cr0, 2 139 + # define CPU_PABORT_HANDLER legacy_pabort 134 140 # endif 135 141 #endif 136 142 137 - #ifdef CONFIG_CPU_PABRT_NOIFAR 143 + #ifdef CONFIG_CPU_PABRT_V6 138 144 # ifdef CPU_PABORT_HANDLER 139 145 # define MULTI_PABORT 1 140 146 # else 141 - # define CPU_PABORT_HANDLER(reg, insn) mov reg, insn 147 + # define CPU_PABORT_HANDLER v6_pabort 148 + # endif 149 + #endif 150 + 151 + #ifdef CONFIG_CPU_PABRT_V7 152 + # ifdef CPU_PABORT_HANDLER 153 + # define MULTI_PABORT 1 154 + # else 155 + # define CPU_PABORT_HANDLER v7_pabort 142 156 # endif 143 157 #endif 144 158
+6 -12
arch/arm/kernel/entry-armv.S
··· 311 311 tst r3, #PSR_I_BIT 312 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 314 mov r0, r2 @ pass address of aborted instruction. 315 + #ifdef MULTI_PABORT 322 316 ldr r4, .LCprocfns 323 317 mov lr, pc 324 318 ldr pc, [r4, #PROCESSOR_PABT_FUNC] 325 319 #else 326 - CPU_PABORT_HANDLER(r0, r2) 320 + bl CPU_PABORT_HANDLER 327 321 #endif 328 322 msr cpsr_c, r9 @ Maybe enable interrupts 329 - mov r1, sp @ regs 323 + mov r2, sp @ regs 330 324 bl do_PrefetchAbort @ call abort handler 331 325 332 326 @ ··· 695 701 __pabt_usr: 696 702 usr_entry 697 703 698 - #ifdef MULTI_PABORT 699 704 mov r0, r2 @ pass address of aborted instruction. 705 + #ifdef MULTI_PABORT 700 706 ldr r4, .LCprocfns 701 707 mov lr, pc 702 708 ldr pc, [r4, #PROCESSOR_PABT_FUNC] 703 709 #else 704 - CPU_PABORT_HANDLER(r0, r2) 710 + bl CPU_PABORT_HANDLER 705 711 #endif 706 712 enable_irq @ Enable interrupts 707 - mov r1, sp @ regs 713 + mov r2, sp @ regs 708 714 bl do_PrefetchAbort @ call abort handler 709 715 UNWIND(.fnend ) 710 716 /* fall through */
-7
arch/arm/kernel/entry-common.S
··· 425 425 #endif 426 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 428 #ifdef CONFIG_OABI_COMPAT 436 429 437 430 /*
+30 -27
arch/arm/mm/Kconfig
··· 17 17 select CPU_CP15_MMU 18 18 select CPU_COPY_V3 if MMU 19 19 select CPU_TLB_V3 if MMU 20 - select CPU_PABRT_NOIFAR 20 + select CPU_PABRT_LEGACY 21 21 help 22 22 The ARM610 is the successor to the ARM3 processor 23 23 and was produced by VLSI Technology Inc. ··· 31 31 depends on !MMU 32 32 select CPU_32v4T 33 33 select CPU_ABRT_LV4T 34 - select CPU_PABRT_NOIFAR 34 + select CPU_PABRT_LEGACY 35 35 select CPU_CACHE_V4 36 36 help 37 37 A 32-bit RISC microprocessor based on the ARM7 processor core ··· 49 49 select CPU_CP15_MMU 50 50 select CPU_COPY_V3 if MMU 51 51 select CPU_TLB_V3 if MMU 52 - select CPU_PABRT_NOIFAR 52 + select CPU_PABRT_LEGACY 53 53 help 54 54 A 32-bit RISC microprocessor based on the ARM7 processor core 55 55 designed by Advanced RISC Machines Ltd. The ARM710 is the ··· 64 64 bool "Support ARM720T processor" if ARCH_INTEGRATOR 65 65 select CPU_32v4T 66 66 select CPU_ABRT_LV4T 67 - select CPU_PABRT_NOIFAR 67 + select CPU_PABRT_LEGACY 68 68 select CPU_CACHE_V4 69 69 select CPU_CACHE_VIVT 70 70 select CPU_CP15_MMU ··· 83 83 depends on !MMU 84 84 select CPU_32v4T 85 85 select CPU_ABRT_LV4T 86 - select CPU_PABRT_NOIFAR 86 + select CPU_PABRT_LEGACY 87 87 select CPU_CACHE_V3 # although the core is v4t 88 88 select CPU_CP15_MPU 89 89 help ··· 100 100 depends on !MMU 101 101 select CPU_32v4T 102 102 select CPU_ABRT_NOMMU 103 - select CPU_PABRT_NOIFAR 103 + select CPU_PABRT_LEGACY 104 104 select CPU_CACHE_V4 105 105 help 106 106 A 32-bit RISC microprocessor based on the ARM9 processor core ··· 114 114 bool "Support ARM920T processor" if ARCH_INTEGRATOR 115 115 select CPU_32v4T 116 116 select CPU_ABRT_EV4T 117 - select CPU_PABRT_NOIFAR 117 + select CPU_PABRT_LEGACY 118 118 select CPU_CACHE_V4WT 119 119 select CPU_CACHE_VIVT 120 120 select CPU_CP15_MMU ··· 135 135 bool "Support ARM922T processor" if ARCH_INTEGRATOR 136 136 select CPU_32v4T 137 137 select CPU_ABRT_EV4T 138 - select CPU_PABRT_NOIFAR 138 + select CPU_PABRT_LEGACY 139 139 select CPU_CACHE_V4WT 140 140 select CPU_CACHE_VIVT 141 141 select CPU_CP15_MMU ··· 154 154 bool "Support ARM925T processor" if ARCH_OMAP1 155 155 select CPU_32v4T 156 156 select CPU_ABRT_EV4T 157 - select CPU_PABRT_NOIFAR 157 + select CPU_PABRT_LEGACY 158 158 select CPU_CACHE_V4WT 159 159 select CPU_CACHE_VIVT 160 160 select CPU_CP15_MMU ··· 173 173 bool "Support ARM926T processor" if ARCH_INTEGRATOR || MACH_REALVIEW_EB 174 174 select CPU_32v5 175 175 select CPU_ABRT_EV5TJ 176 - select CPU_PABRT_NOIFAR 176 + select CPU_PABRT_LEGACY 177 177 select CPU_CACHE_VIVT 178 178 select CPU_CP15_MMU 179 179 select CPU_COPY_V4WB if MMU ··· 191 191 bool 192 192 select CPU_32v4 193 193 select CPU_ABRT_EV4 194 - select CPU_PABRT_NOIFAR 194 + select CPU_PABRT_LEGACY 195 195 select CPU_CACHE_VIVT 196 196 select CPU_CP15_MMU 197 197 select CPU_CACHE_FA ··· 210 210 depends on !MMU 211 211 select CPU_32v4T 212 212 select CPU_ABRT_NOMMU 213 - select CPU_PABRT_NOIFAR 213 + select CPU_PABRT_LEGACY 214 214 select CPU_CACHE_VIVT 215 215 select CPU_CP15_MPU 216 216 help ··· 228 228 depends on !MMU 229 229 select CPU_32v5 230 230 select CPU_ABRT_NOMMU 231 - select CPU_PABRT_NOIFAR 231 + select CPU_PABRT_LEGACY 232 232 select CPU_CACHE_VIVT 233 233 select CPU_CP15_MPU 234 234 help ··· 244 244 bool "Support ARM1020T (rev 0) processor" if ARCH_INTEGRATOR 245 245 select CPU_32v5 246 246 select CPU_ABRT_EV4T 247 - select CPU_PABRT_NOIFAR 247 + select CPU_PABRT_LEGACY 248 248 select CPU_CACHE_V4WT 249 249 select CPU_CACHE_VIVT 250 250 select CPU_CP15_MMU ··· 262 262 bool "Support ARM1020E processor" if ARCH_INTEGRATOR 263 263 select CPU_32v5 264 264 select CPU_ABRT_EV4T 265 - select CPU_PABRT_NOIFAR 265 + select CPU_PABRT_LEGACY 266 266 select CPU_CACHE_V4WT 267 267 select CPU_CACHE_VIVT 268 268 select CPU_CP15_MMU ··· 275 275 bool "Support ARM1022E processor" if ARCH_INTEGRATOR 276 276 select CPU_32v5 277 277 select CPU_ABRT_EV4T 278 - select CPU_PABRT_NOIFAR 278 + select CPU_PABRT_LEGACY 279 279 select CPU_CACHE_VIVT 280 280 select CPU_CP15_MMU 281 281 select CPU_COPY_V4WB if MMU # can probably do better ··· 293 293 bool "Support ARM1026EJ-S processor" if ARCH_INTEGRATOR 294 294 select CPU_32v5 295 295 select CPU_ABRT_EV5T # But need Jazelle, but EV5TJ ignores bit 10 296 - select CPU_PABRT_NOIFAR 296 + select CPU_PABRT_LEGACY 297 297 select CPU_CACHE_VIVT 298 298 select CPU_CP15_MMU 299 299 select CPU_COPY_V4WB if MMU # can probably do better ··· 311 311 select CPU_32v3 if ARCH_RPC 312 312 select CPU_32v4 if !ARCH_RPC 313 313 select CPU_ABRT_EV4 314 - select CPU_PABRT_NOIFAR 314 + select CPU_PABRT_LEGACY 315 315 select CPU_CACHE_V4WB 316 316 select CPU_CACHE_VIVT 317 317 select CPU_CP15_MMU ··· 331 331 bool 332 332 select CPU_32v4 333 333 select CPU_ABRT_EV4 334 - select CPU_PABRT_NOIFAR 334 + select CPU_PABRT_LEGACY 335 335 select CPU_CACHE_V4WB 336 336 select CPU_CACHE_VIVT 337 337 select CPU_CP15_MMU ··· 342 342 bool 343 343 select CPU_32v5 344 344 select CPU_ABRT_EV5T 345 - select CPU_PABRT_NOIFAR 345 + select CPU_PABRT_LEGACY 346 346 select CPU_CACHE_VIVT 347 347 select CPU_CP15_MMU 348 348 select CPU_TLB_V4WBI if MMU ··· 352 352 bool 353 353 select CPU_32v5 354 354 select CPU_ABRT_EV5T 355 - select CPU_PABRT_NOIFAR 355 + select CPU_PABRT_LEGACY 356 356 select CPU_CACHE_VIVT 357 357 select CPU_CP15_MMU 358 358 select CPU_TLB_V4WBI if MMU ··· 363 363 bool 364 364 select CPU_32v5 365 365 select CPU_ABRT_EV5T 366 - select CPU_PABRT_NOIFAR 366 + select CPU_PABRT_LEGACY 367 367 select CPU_CACHE_VIVT 368 368 select CPU_CP15_MMU 369 369 select CPU_TLB_V4WBI if MMU ··· 374 374 bool 375 375 select CPU_32v5 376 376 select CPU_ABRT_EV5T 377 - select CPU_PABRT_NOIFAR 377 + select CPU_PABRT_LEGACY 378 378 select CPU_CACHE_VIVT 379 379 select CPU_CP15_MMU 380 380 select CPU_COPY_FEROCEON if MMU ··· 394 394 bool "Support ARM V6 processor" if ARCH_INTEGRATOR || MACH_REALVIEW_EB || MACH_REALVIEW_PBX 395 395 select CPU_32v6 396 396 select CPU_ABRT_EV6 397 - select CPU_PABRT_NOIFAR 397 + select CPU_PABRT_V6 398 398 select CPU_CACHE_V6 399 399 select CPU_CACHE_VIPT 400 400 select CPU_CP15_MMU ··· 420 420 select CPU_32v6K 421 421 select CPU_32v7 422 422 select CPU_ABRT_EV7 423 - select CPU_PABRT_IFAR 423 + select CPU_PABRT_V7 424 424 select CPU_CACHE_V7 425 425 select CPU_CACHE_VIPT 426 426 select CPU_CP15_MMU ··· 482 482 config CPU_ABRT_EV7 483 483 bool 484 484 485 - config CPU_PABRT_IFAR 485 + config CPU_PABRT_LEGACY 486 486 bool 487 487 488 - config CPU_PABRT_NOIFAR 488 + config CPU_PABRT_V6 489 + bool 490 + 491 + config CPU_PABRT_V7 489 492 bool 490 493 491 494 # The cache model
+4
arch/arm/mm/Makefile
··· 27 27 obj-$(CONFIG_CPU_ABRT_EV6) += abort-ev6.o 28 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 34 obj-$(CONFIG_CPU_CACHE_V3) += cache-v3.o 31 35 obj-$(CONFIG_CPU_CACHE_V4) += cache-v4.o 32 36 obj-$(CONFIG_CPU_CACHE_V4WT) += cache-v4wt.o
+1 -1
arch/arm/mm/fault.c
··· 520 520 } 521 521 522 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 525 do_translation_fault(addr, FSR_LNX_PF, regs); 526 526 }
+19
arch/arm/mm/pabort-legacy.S
··· 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)
+19
arch/arm/mm/pabort-v6.S
··· 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)
+20
arch/arm/mm/pabort-v7.S
··· 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)
+1 -1
arch/arm/mm/proc-arm1020.S
··· 449 449 .type arm1020_processor_functions, #object 450 450 arm1020_processor_functions: 451 451 .word v4t_early_abort 452 - .word pabort_noifar 452 + .word legacy_pabort 453 453 .word cpu_arm1020_proc_init 454 454 .word cpu_arm1020_proc_fin 455 455 .word cpu_arm1020_reset
+1 -1
arch/arm/mm/proc-arm1020e.S
··· 430 430 .type arm1020e_processor_functions, #object 431 431 arm1020e_processor_functions: 432 432 .word v4t_early_abort 433 - .word pabort_noifar 433 + .word legacy_pabort 434 434 .word cpu_arm1020e_proc_init 435 435 .word cpu_arm1020e_proc_fin 436 436 .word cpu_arm1020e_reset
+1 -1
arch/arm/mm/proc-arm1022.S
··· 413 413 .type arm1022_processor_functions, #object 414 414 arm1022_processor_functions: 415 415 .word v4t_early_abort 416 - .word pabort_noifar 416 + .word legacy_pabort 417 417 .word cpu_arm1022_proc_init 418 418 .word cpu_arm1022_proc_fin 419 419 .word cpu_arm1022_reset
+1 -1
arch/arm/mm/proc-arm1026.S
··· 408 408 .type arm1026_processor_functions, #object 409 409 arm1026_processor_functions: 410 410 .word v5t_early_abort 411 - .word pabort_noifar 411 + .word legacy_pabort 412 412 .word cpu_arm1026_proc_init 413 413 .word cpu_arm1026_proc_fin 414 414 .word cpu_arm1026_reset
+2 -2
arch/arm/mm/proc-arm6_7.S
··· 278 278 .type arm6_processor_functions, #object 279 279 ENTRY(arm6_processor_functions) 280 280 .word cpu_arm6_data_abort 281 - .word pabort_noifar 281 + .word legacy_pabort 282 282 .word cpu_arm6_proc_init 283 283 .word cpu_arm6_proc_fin 284 284 .word cpu_arm6_reset ··· 295 295 .type arm7_processor_functions, #object 296 296 ENTRY(arm7_processor_functions) 297 297 .word cpu_arm7_data_abort 298 - .word pabort_noifar 298 + .word legacy_pabort 299 299 .word cpu_arm7_proc_init 300 300 .word cpu_arm7_proc_fin 301 301 .word cpu_arm7_reset
+1 -1
arch/arm/mm/proc-arm720.S
··· 181 181 .type arm720_processor_functions, #object 182 182 ENTRY(arm720_processor_functions) 183 183 .word v4t_late_abort 184 - .word pabort_noifar 184 + .word legacy_pabort 185 185 .word cpu_arm720_proc_init 186 186 .word cpu_arm720_proc_fin 187 187 .word cpu_arm720_reset
+1 -1
arch/arm/mm/proc-arm740.S
··· 126 126 .type arm740_processor_functions, #object 127 127 ENTRY(arm740_processor_functions) 128 128 .word v4t_late_abort 129 - .word pabort_noifar 129 + .word legacy_pabort 130 130 .word cpu_arm740_proc_init 131 131 .word cpu_arm740_proc_fin 132 132 .word cpu_arm740_reset
+1 -1
arch/arm/mm/proc-arm7tdmi.S
··· 64 64 .type arm7tdmi_processor_functions, #object 65 65 ENTRY(arm7tdmi_processor_functions) 66 66 .word v4t_late_abort 67 - .word pabort_noifar 67 + .word legacy_pabort 68 68 .word cpu_arm7tdmi_proc_init 69 69 .word cpu_arm7tdmi_proc_fin 70 70 .word cpu_arm7tdmi_reset
+1 -1
arch/arm/mm/proc-arm920.S
··· 395 395 .type arm920_processor_functions, #object 396 396 arm920_processor_functions: 397 397 .word v4t_early_abort 398 - .word pabort_noifar 398 + .word legacy_pabort 399 399 .word cpu_arm920_proc_init 400 400 .word cpu_arm920_proc_fin 401 401 .word cpu_arm920_reset
+1 -1
arch/arm/mm/proc-arm922.S
··· 399 399 .type arm922_processor_functions, #object 400 400 arm922_processor_functions: 401 401 .word v4t_early_abort 402 - .word pabort_noifar 402 + .word legacy_pabort 403 403 .word cpu_arm922_proc_init 404 404 .word cpu_arm922_proc_fin 405 405 .word cpu_arm922_reset
+1 -1
arch/arm/mm/proc-arm925.S
··· 462 462 .type arm925_processor_functions, #object 463 463 arm925_processor_functions: 464 464 .word v4t_early_abort 465 - .word pabort_noifar 465 + .word legacy_pabort 466 466 .word cpu_arm925_proc_init 467 467 .word cpu_arm925_proc_fin 468 468 .word cpu_arm925_reset
+1 -1
arch/arm/mm/proc-arm926.S
··· 415 415 .type arm926_processor_functions, #object 416 416 arm926_processor_functions: 417 417 .word v5tj_early_abort 418 - .word pabort_noifar 418 + .word legacy_pabort 419 419 .word cpu_arm926_proc_init 420 420 .word cpu_arm926_proc_fin 421 421 .word cpu_arm926_reset
+1 -1
arch/arm/mm/proc-arm940.S
··· 322 322 .type arm940_processor_functions, #object 323 323 ENTRY(arm940_processor_functions) 324 324 .word nommu_early_abort 325 - .word pabort_noifar 325 + .word legacy_pabort 326 326 .word cpu_arm940_proc_init 327 327 .word cpu_arm940_proc_fin 328 328 .word cpu_arm940_reset
+1 -1
arch/arm/mm/proc-arm946.S
··· 377 377 .type arm946_processor_functions, #object 378 378 ENTRY(arm946_processor_functions) 379 379 .word nommu_early_abort 380 - .word pabort_noifar 380 + .word legacy_pabort 381 381 .word cpu_arm946_proc_init 382 382 .word cpu_arm946_proc_fin 383 383 .word cpu_arm946_reset
+1 -1
arch/arm/mm/proc-arm9tdmi.S
··· 64 64 .type arm9tdmi_processor_functions, #object 65 65 ENTRY(arm9tdmi_processor_functions) 66 66 .word nommu_early_abort 67 - .word pabort_noifar 67 + .word legacy_pabort 68 68 .word cpu_arm9tdmi_proc_init 69 69 .word cpu_arm9tdmi_proc_fin 70 70 .word cpu_arm9tdmi_reset
+1 -1
arch/arm/mm/proc-fa526.S
··· 191 191 .type fa526_processor_functions, #object 192 192 fa526_processor_functions: 193 193 .word v4_early_abort 194 - .word pabort_noifar 194 + .word legacy_pabort 195 195 .word cpu_fa526_proc_init 196 196 .word cpu_fa526_proc_fin 197 197 .word cpu_fa526_reset
+1 -1
arch/arm/mm/proc-feroceon.S
··· 499 499 .type feroceon_processor_functions, #object 500 500 feroceon_processor_functions: 501 501 .word v5t_early_abort 502 - .word pabort_noifar 502 + .word legacy_pabort 503 503 .word cpu_feroceon_proc_init 504 504 .word cpu_feroceon_proc_fin 505 505 .word cpu_feroceon_reset
+1 -1
arch/arm/mm/proc-mohawk.S
··· 359 359 .type mohawk_processor_functions, #object 360 360 mohawk_processor_functions: 361 361 .word v5t_early_abort 362 - .word pabort_noifar 362 + .word legacy_pabort 363 363 .word cpu_mohawk_proc_init 364 364 .word cpu_mohawk_proc_fin 365 365 .word cpu_mohawk_reset
+1 -1
arch/arm/mm/proc-sa110.S
··· 199 199 .type sa110_processor_functions, #object 200 200 ENTRY(sa110_processor_functions) 201 201 .word v4_early_abort 202 - .word pabort_noifar 202 + .word legacy_pabort 203 203 .word cpu_sa110_proc_init 204 204 .word cpu_sa110_proc_fin 205 205 .word cpu_sa110_reset
+1 -1
arch/arm/mm/proc-sa1100.S
··· 214 214 .type sa1100_processor_functions, #object 215 215 ENTRY(sa1100_processor_functions) 216 216 .word v4_early_abort 217 - .word pabort_noifar 217 + .word legacy_pabort 218 218 .word cpu_sa1100_proc_init 219 219 .word cpu_sa1100_proc_fin 220 220 .word cpu_sa1100_reset
+1 -1
arch/arm/mm/proc-v6.S
··· 191 191 .type v6_processor_functions, #object 192 192 ENTRY(v6_processor_functions) 193 193 .word v6_early_abort 194 - .word pabort_noifar 194 + .word v6_pabort 195 195 .word cpu_v6_proc_init 196 196 .word cpu_v6_proc_fin 197 197 .word cpu_v6_reset
+1 -1
arch/arm/mm/proc-v7.S
··· 295 295 .type v7_processor_functions, #object 296 296 ENTRY(v7_processor_functions) 297 297 .word v7_early_abort 298 - .word pabort_ifar 298 + .word v7_pabort 299 299 .word cpu_v7_proc_init 300 300 .word cpu_v7_proc_fin 301 301 .word cpu_v7_reset
+1 -1
arch/arm/mm/proc-xsc3.S
··· 428 428 .type xsc3_processor_functions, #object 429 429 ENTRY(xsc3_processor_functions) 430 430 .word v5t_early_abort 431 - .word pabort_noifar 431 + .word legacy_pabort 432 432 .word cpu_xsc3_proc_init 433 433 .word cpu_xsc3_proc_fin 434 434 .word cpu_xsc3_reset
+1 -1
arch/arm/mm/proc-xscale.S
··· 511 511 .type xscale_processor_functions, #object 512 512 ENTRY(xscale_processor_functions) 513 513 .word v5t_early_abort 514 - .word pabort_noifar 514 + .word legacy_pabort 515 515 .word cpu_xscale_proc_init 516 516 .word cpu_xscale_proc_fin 517 517 .word cpu_xscale_reset