Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
ac8b9c1c
Commit
ac8b9c1c
authored
Jun 26, 2011
by
Russell King
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ARM: entry: prefetch/data abort helpers: convert to macros
Signed-off-by:
Russell King
<
rmk+kernel@arm.linux.org.uk
>
parent
2342aa28
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
35 additions
and
50 deletions
+35
-50
arch/arm/kernel/entry-armv.S
arch/arm/kernel/entry-armv.S
+35
-50
No files found.
arch/arm/kernel/entry-armv.S
View file @
ac8b9c1c
...
...
@@ -44,6 +44,37 @@
9997
:
.
endm
.
macro
pabt_helper
mov
r0
,
r2
@
pass
address
of
aborted
instruction
.
#ifdef MULTI_PABORT
ldr
r4
,
.
LCprocfns
mov
lr
,
pc
ldr
pc
,
[
r4
,
#
PROCESSOR_PABT_FUNC
]
#else
bl
CPU_PABORT_HANDLER
#endif
.
endm
.
macro
dabt_helper
@
@
Call
the
processor
-
specific
abort
handler
:
@
@
r2
-
aborted
context
pc
@
r3
-
aborted
context
cpsr
@
@
The
abort
handler
must
return
the
aborted
address
in
r0
,
and
@
the
fault
status
register
in
r1
.
r9
must
be
preserved
.
@
#ifdef MULTI_DABORT
ldr
r4
,
.
LCprocfns
mov
lr
,
pc
ldr
pc
,
[
r4
,
#
PROCESSOR_DABT_FUNC
]
#else
bl
CPU_DABORT_HANDLER
#endif
.
endm
#ifdef CONFIG_KPROBES
.
section
.
kprobes
.
text
,
"ax"
,%
progbits
#else
...
...
@@ -159,22 +190,7 @@ __dabt_svc:
tst
r3
,
#
PSR_I_BIT
biceq
r9
,
r9
,
#
PSR_I_BIT
@
@
Call
the
processor
-
specific
abort
handler
:
@
@
r2
-
aborted
context
pc
@
r3
-
aborted
context
cpsr
@
@
The
abort
handler
must
return
the
aborted
address
in
r0
,
and
@
the
fault
status
register
in
r1
.
r9
must
be
preserved
.
@
#ifdef MULTI_DABORT
ldr
r4
,
.
LCprocfns
mov
lr
,
pc
ldr
pc
,
[
r4
,
#
PROCESSOR_DABT_FUNC
]
#else
bl
CPU_DABORT_HANDLER
#endif
dabt_helper
@
@
set
desired
IRQ
state
,
then
call
main
handler
...
...
@@ -298,14 +314,7 @@ __pabt_svc:
tst
r3
,
#
PSR_I_BIT
biceq
r9
,
r9
,
#
PSR_I_BIT
mov
r0
,
r2
@
pass
address
of
aborted
instruction
.
#ifdef MULTI_PABORT
ldr
r4
,
.
LCprocfns
mov
lr
,
pc
ldr
pc
,
[
r4
,
#
PROCESSOR_PABT_FUNC
]
#else
bl
CPU_PABORT_HANDLER
#endif
pabt_helper
debug_entry
r1
msr
cpsr_c
,
r9
@
Maybe
enable
interrupts
mov
r2
,
sp
@
regs
...
...
@@ -401,23 +410,7 @@ ENDPROC(__pabt_svc)
__dabt_usr
:
usr_entry
kuser_cmpxchg_check
@
@
Call
the
processor
-
specific
abort
handler
:
@
@
r2
-
aborted
context
pc
@
r3
-
aborted
context
cpsr
@
@
The
abort
handler
must
return
the
aborted
address
in
r0
,
and
@
the
fault
status
register
in
r1
.
@
#ifdef MULTI_DABORT
ldr
r4
,
.
LCprocfns
mov
lr
,
pc
ldr
pc
,
[
r4
,
#
PROCESSOR_DABT_FUNC
]
#else
bl
CPU_DABORT_HANDLER
#endif
dabt_helper
@
@
IRQs
on
,
then
call
the
main
handler
...
...
@@ -682,15 +675,7 @@ ENDPROC(__und_usr_unknown)
.
align
5
__pabt_usr
:
usr_entry
mov
r0
,
r2
@
pass
address
of
aborted
instruction
.
#ifdef MULTI_PABORT
ldr
r4
,
.
LCprocfns
mov
lr
,
pc
ldr
pc
,
[
r4
,
#
PROCESSOR_PABT_FUNC
]
#else
bl
CPU_PABORT_HANDLER
#endif
pabt_helper
debug_entry
r1
enable_irq
@
Enable
interrupts
mov
r2
,
sp
@
regs
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment