diff options
-rw-r--r-- | arch/arm/kernel/entry-armv.S | 2 | ||||
-rw-r--r-- | arch/arm/mm/pabort-legacy.S | 3 | ||||
-rw-r--r-- | arch/arm/mm/pabort-v6.S | 3 | ||||
-rw-r--r-- | arch/arm/mm/pabort-v7.S | 2 |
4 files changed, 6 insertions, 4 deletions
diff --git a/arch/arm/kernel/entry-armv.S b/arch/arm/kernel/entry-armv.S index 582bb2310446..d644d0240ad3 100644 --- a/arch/arm/kernel/entry-armv.S +++ b/arch/arm/kernel/entry-armv.S | |||
@@ -45,7 +45,7 @@ | |||
45 | .endm | 45 | .endm |
46 | 46 | ||
47 | .macro pabt_helper | 47 | .macro pabt_helper |
48 | mov r0, r4 @ pass address of aborted instruction. | 48 | @ PABORT handler takes fault address in r4 |
49 | #ifdef MULTI_PABORT | 49 | #ifdef MULTI_PABORT |
50 | ldr ip, .LCprocfns | 50 | ldr ip, .LCprocfns |
51 | mov lr, pc | 51 | mov lr, pc |
diff --git a/arch/arm/mm/pabort-legacy.S b/arch/arm/mm/pabort-legacy.S index 87970eba88ea..8a5d8aaf2d5e 100644 --- a/arch/arm/mm/pabort-legacy.S +++ b/arch/arm/mm/pabort-legacy.S | |||
@@ -4,7 +4,7 @@ | |||
4 | /* | 4 | /* |
5 | * Function: legacy_pabort | 5 | * Function: legacy_pabort |
6 | * | 6 | * |
7 | * Params : r0 = address of aborted instruction | 7 | * Params : r4 = address of aborted instruction |
8 | * | 8 | * |
9 | * Returns : r0 = address of abort | 9 | * Returns : r0 = address of abort |
10 | * : r1 = Simulated IFSR with section translation fault status | 10 | * : r1 = Simulated IFSR with section translation fault status |
@@ -14,6 +14,7 @@ | |||
14 | 14 | ||
15 | .align 5 | 15 | .align 5 |
16 | ENTRY(legacy_pabort) | 16 | ENTRY(legacy_pabort) |
17 | mov r0, r4 | ||
17 | mov r1, #5 | 18 | mov r1, #5 |
18 | mov pc, lr | 19 | mov pc, lr |
19 | ENDPROC(legacy_pabort) | 20 | ENDPROC(legacy_pabort) |
diff --git a/arch/arm/mm/pabort-v6.S b/arch/arm/mm/pabort-v6.S index 06e3d1ef2115..eaac1cb7c4cc 100644 --- a/arch/arm/mm/pabort-v6.S +++ b/arch/arm/mm/pabort-v6.S | |||
@@ -4,7 +4,7 @@ | |||
4 | /* | 4 | /* |
5 | * Function: v6_pabort | 5 | * Function: v6_pabort |
6 | * | 6 | * |
7 | * Params : r0 = address of aborted instruction | 7 | * Params : r4 = address of aborted instruction |
8 | * | 8 | * |
9 | * Returns : r0 = address of abort | 9 | * Returns : r0 = address of abort |
10 | * : r1 = IFSR | 10 | * : r1 = IFSR |
@@ -14,6 +14,7 @@ | |||
14 | 14 | ||
15 | .align 5 | 15 | .align 5 |
16 | ENTRY(v6_pabort) | 16 | ENTRY(v6_pabort) |
17 | mov r0, r4 | ||
17 | mrc p15, 0, r1, c5, c0, 1 @ get IFSR | 18 | mrc p15, 0, r1, c5, c0, 1 @ get IFSR |
18 | mov pc, lr | 19 | mov pc, lr |
19 | ENDPROC(v6_pabort) | 20 | ENDPROC(v6_pabort) |
diff --git a/arch/arm/mm/pabort-v7.S b/arch/arm/mm/pabort-v7.S index a8b3b300a18d..b515e0b059b3 100644 --- a/arch/arm/mm/pabort-v7.S +++ b/arch/arm/mm/pabort-v7.S | |||
@@ -4,7 +4,7 @@ | |||
4 | /* | 4 | /* |
5 | * Function: v6_pabort | 5 | * Function: v6_pabort |
6 | * | 6 | * |
7 | * Params : r0 = address of aborted instruction | 7 | * Params : r4 = address of aborted instruction |
8 | * | 8 | * |
9 | * Returns : r0 = address of abort | 9 | * Returns : r0 = address of abort |
10 | * : r1 = IFSR | 10 | * : r1 = IFSR |