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
nexedi
linux
Commits
05c9ca88
Commit
05c9ca88
authored
Jun 12, 2015
by
Russell King
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'bsym' into for-next
Conflicts: arch/arm/kernel/head.S
parents
c62af70f
14327c66
Changes
14
Hide whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
42 additions
and
29 deletions
+42
-29
arch/arm/boot/compressed/head.S
arch/arm/boot/compressed/head.S
+2
-2
arch/arm/common/mcpm_head.S
arch/arm/common/mcpm_head.S
+1
-1
arch/arm/include/asm/assembler.h
arch/arm/include/asm/assembler.h
+16
-1
arch/arm/include/asm/entry-macro-multi.S
arch/arm/include/asm/entry-macro-multi.S
+2
-2
arch/arm/include/asm/unified.h
arch/arm/include/asm/unified.h
+0
-2
arch/arm/kernel/entry-armv.S
arch/arm/kernel/entry-armv.S
+6
-6
arch/arm/kernel/entry-common.S
arch/arm/kernel/entry-common.S
+3
-3
arch/arm/kernel/entry-ftrace.S
arch/arm/kernel/entry-ftrace.S
+1
-1
arch/arm/kernel/head-nommu.S
arch/arm/kernel/head-nommu.S
+3
-3
arch/arm/kernel/head.S
arch/arm/kernel/head.S
+4
-4
arch/arm/kernel/sleep.S
arch/arm/kernel/sleep.S
+1
-1
arch/arm/kvm/interrupts.S
arch/arm/kvm/interrupts.S
+1
-1
arch/arm/lib/call_with_stack.S
arch/arm/lib/call_with_stack.S
+1
-1
arch/arm/mm/proc-v7m.S
arch/arm/mm/proc-v7m.S
+1
-1
No files found.
arch/arm/boot/compressed/head.S
View file @
05c9ca88
...
...
@@ -130,7 +130,7 @@ start:
.
endr
ARM
(
mov
r0
,
r0
)
ARM
(
b
1
f
)
THUMB
(
adr
r12
,
BSYM
(
1
f
)
)
THUMB
(
badr
r12
,
1
f
)
THUMB
(
bx
r12
)
.
word
_magic_sig
@
Magic
numbers
to
help
the
loader
...
...
@@ -447,7 +447,7 @@ dtb_check_done:
bl
cache_clean_flush
adr
r0
,
BSYM
(
restart
)
badr
r0
,
restart
add
r0
,
r0
,
r6
mov
pc
,
r0
...
...
arch/arm/common/mcpm_head.S
View file @
05c9ca88
...
...
@@ -49,7 +49,7 @@
ENTRY
(
mcpm_entry_point
)
ARM_BE8
(
setend
be
)
THUMB
(
adr
r12
,
BSYM
(
1
f
)
)
THUMB
(
badr
r12
,
1
f
)
THUMB
(
bx
r12
)
THUMB
(
.
thumb
)
1
:
...
...
arch/arm/include/asm/assembler.h
View file @
05c9ca88
...
...
@@ -177,6 +177,21 @@
restore_irqs_notrace
\
oldcpsr
.
endm
/*
* Assembly version of "adr rd, BSYM(sym)". This should only be used to
* reference local symbols in the same assembly file which are to be
* resolved by the assembler. Other usage is undefined.
*/
.
irp
c
,,
eq
,
ne
,
cs
,
cc
,
mi
,
pl
,
vs
,
vc
,
hi
,
ls
,
ge
,
lt
,
gt
,
le
,
hs
,
lo
.
macro
badr
\
c
,
rd
,
sym
#ifdef CONFIG_THUMB2_KERNEL
adr
\
c
\
rd
,
\
sym
+
1
#else
adr
\
c
\
rd
,
\
sym
#endif
.
endm
.
endr
/*
* Get current thread_info.
*/
...
...
@@ -326,7 +341,7 @@
THUMB
(
orr
\
reg
,
\
reg
,
#
PSR_T_BIT
)
bne
1
f
orr
\
reg
,
\
reg
,
#
PSR_A_BIT
adr
lr
,
BSYM
(
2
f
)
badr
lr
,
2
f
msr
spsr_cxsf
,
\
reg
__MSR_ELR_HYP
(
14
)
__ERET
...
...
arch/arm/include/asm/entry-macro-multi.S
View file @
05c9ca88
...
...
@@ -10,7 +10,7 @@
@
@
routine
called
with
r0
=
irq
number
,
r1
=
struct
pt_regs
*
@
adrne
lr
,
BSYM
(
1
b
)
badrne
lr
,
1
b
bne
asm_do_IRQ
#ifdef CONFIG_SMP
...
...
@@ -23,7 +23,7 @@
ALT_SMP
(
test_for_ipi
r0
,
r2
,
r6
,
lr
)
ALT_UP_B
(9997
f
)
movne
r1
,
sp
adrne
lr
,
BSYM
(
1
b
)
badrne
lr
,
1
b
bne
do_IPI
#endif
9997
:
...
...
arch/arm/include/asm/unified.h
View file @
05c9ca88
...
...
@@ -45,7 +45,6 @@
#define THUMB(x...) x
#ifdef __ASSEMBLY__
#define W(instr) instr.w
#define BSYM(sym) sym + 1
#else
#define WASM(instr) #instr ".w"
#endif
...
...
@@ -59,7 +58,6 @@
#define THUMB(x...)
#ifdef __ASSEMBLY__
#define W(instr) instr
#define BSYM(sym) sym
#else
#define WASM(instr) #instr
#endif
...
...
arch/arm/kernel/entry-armv.S
View file @
05c9ca88
...
...
@@ -40,7 +40,7 @@
#ifdef CONFIG_MULTI_IRQ_HANDLER
ldr
r1
,
=
handle_arch_irq
mov
r0
,
sp
adr
lr
,
BSYM
(
9997
f
)
badr
lr
,
9997
f
ldr
pc
,
[
r1
]
#else
arch_irq_handler_default
...
...
@@ -273,7 +273,7 @@ __und_svc:
str
r4
,
[
sp
,
#
S_PC
]
orr
r0
,
r9
,
r0
,
lsl
#
16
#endif
adr
r9
,
BSYM
(
__und_svc_finish
)
badr
r9
,
__und_svc_finish
mov
r2
,
r4
bl
call_fpe
...
...
@@ -469,7 +469,7 @@ __und_usr:
@
instruction
,
or
the
more
conventional
lr
if
we
are
to
treat
@
this
as
a
real
undefined
instruction
@
adr
r9
,
BSYM
(
ret_from_exception
)
badr
r9
,
ret_from_exception
@
IRQs
must
be
enabled
before
attempting
to
read
the
instruction
from
@
user
space
since
that
could
cause
a
page
/
translation
fault
if
the
...
...
@@ -486,7 +486,7 @@ __und_usr:
@
r2
=
PC
value
for
the
following
instruction
(
:
=
regs
->
ARM_pc
)
@
r4
=
PC
value
for
the
faulting
instruction
@
lr
=
32
-
bit
undefined
instruction
function
adr
lr
,
BSYM
(
__und_usr_fault_32
)
badr
lr
,
__und_usr_fault_32
b
call_fpe
__und_usr_thumb
:
...
...
@@ -522,7 +522,7 @@ ARM_BE8(rev16 r0, r0) @ little endian instruction
add
r2
,
r2
,
#
2
@
r2
is
PC
+
2
,
make
it
PC
+
4
str
r2
,
[
sp
,
#
S_PC
]
@
it
's a 2x16bit instr, update
orr
r0
,
r0
,
r5
,
lsl
#
16
adr
lr
,
BSYM
(
__und_usr_fault_32
)
badr
lr
,
__und_usr_fault_32
@
r0
=
the
two
16
-
bit
Thumb
instructions
which
caused
the
exception
@
r2
=
PC
value
for
the
following
Thumb
instruction
(
:
=
regs
->
ARM_pc
)
@
r4
=
PC
value
for
the
first
16
-
bit
Thumb
instruction
...
...
@@ -716,7 +716,7 @@ __und_usr_fault_32:
__und_usr_fault_16
:
mov
r1
,
#
2
1
:
mov
r0
,
sp
adr
lr
,
BSYM
(
ret_from_exception
)
badr
lr
,
ret_from_exception
b
__und_fault
ENDPROC
(
__und_usr_fault_32
)
ENDPROC
(
__und_usr_fault_16
)
...
...
arch/arm/kernel/entry-common.S
View file @
05c9ca88
...
...
@@ -90,7 +90,7 @@ ENTRY(ret_from_fork)
bl
schedule_tail
cmp
r5
,
#
0
movne
r0
,
r4
adrne
lr
,
BSYM
(
1
f
)
badrne
lr
,
1
f
retne
r5
1
:
get_thread_info
tsk
b
ret_slow_syscall
...
...
@@ -198,7 +198,7 @@ local_restart:
bne
__sys_trace
cmp
scno
,
#
NR_syscalls
@
check
upper
syscall
limit
adr
lr
,
BSYM
(
ret_fast_syscall
)
@
return
address
badr
lr
,
ret_fast_syscall
@
return
address
ldrcc
pc
,
[
tbl
,
scno
,
lsl
#
2
]
@
call
sys_
*
routine
add
r1
,
sp
,
#
S_OFF
...
...
@@ -233,7 +233,7 @@ __sys_trace:
add
r0
,
sp
,
#
S_OFF
bl
syscall_trace_enter
adr
lr
,
BSYM
(
__sys_trace_return
)
@
return
address
badr
lr
,
__sys_trace_return
@
return
address
mov
scno
,
r0
@
syscall
number
(
possibly
new
)
add
r1
,
sp
,
#
S_R0
+
S_OFF
@
pointer
to
regs
cmp
scno
,
#
NR_syscalls
@
check
upper
syscall
limit
...
...
arch/arm/kernel/entry-ftrace.S
View file @
05c9ca88
...
...
@@ -87,7 +87,7 @@
1
:
mcount_get_lr
r1
@
lr
of
instrumented
func
mcount_adjust_addr
r0
,
lr
@
instrumented
function
adr
lr
,
BSYM
(
2
f
)
badr
lr
,
2
f
mov
pc
,
r2
2
:
mcount_exit
.
endm
...
...
arch/arm/kernel/head-nommu.S
View file @
05c9ca88
...
...
@@ -46,7 +46,7 @@ ENTRY(stext)
.
arm
ENTRY
(
stext
)
THUMB
(
adr
r9
,
BSYM
(
1
f
)
)
@
Kernel
is
always
entered
in
ARM
.
THUMB
(
badr
r9
,
1
f
)
@
Kernel
is
always
entered
in
ARM
.
THUMB
(
bx
r9
)
@
If
this
is
a
Thumb
-
2
kernel
,
THUMB
(
.
thumb
)
@
switch
to
Thumb
now
.
THUMB
(1:
)
...
...
@@ -79,7 +79,7 @@ ENTRY(stext)
#endif
ldr
r13
,
=
__mmap_switched
@
address
to
jump
to
after
@
initialising
sctlr
adr
lr
,
BSYM
(
1
f
)
@
return
(
PIC
)
address
badr
lr
,
1
f
@
return
(
PIC
)
address
ldr
r12
,
[
r10
,
#
PROCINFO_INITFUNC
]
add
r12
,
r12
,
r10
ret
r12
...
...
@@ -115,7 +115,7 @@ ENTRY(secondary_startup)
bl
__setup_mpu
@
Initialize
the
MPU
#endif
adr
lr
,
BSYM
(
__after_proc_init
)
@
return
address
badr
lr
,
__after_proc_init
@
return
address
mov
r13
,
r12
@
__secondary_switched
address
ldr
r12
,
[
r10
,
#
PROCINFO_INITFUNC
]
add
r12
,
r12
,
r10
...
...
arch/arm/kernel/head.S
View file @
05c9ca88
...
...
@@ -80,7 +80,7 @@
ENTRY
(
stext
)
ARM_BE8
(
setend
be
)
@
ensure
we
are
in
BE8
mode
THUMB
(
adr
r9
,
BSYM
(
1
f
)
)
@
Kernel
is
always
entered
in
ARM
.
THUMB
(
badr
r9
,
1
f
)
@
Kernel
is
always
entered
in
ARM
.
THUMB
(
bx
r9
)
@
If
this
is
a
Thumb
-
2
kernel
,
THUMB
(
.
thumb
)
@
switch
to
Thumb
now
.
THUMB
(1:
)
...
...
@@ -148,7 +148,7 @@ ENTRY(stext)
*/
ldr
r13
,
=
__mmap_switched
@
address
to
jump
to
after
@
mmu
has
been
enabled
adr
lr
,
BSYM
(
1
f
)
@
return
(
PIC
)
address
badr
lr
,
1
f
@
return
(
PIC
)
address
#ifdef CONFIG_ARM_LPAE
mov
r5
,
#
0
@
high
TTBR0
mov
r8
,
r4
,
lsr
#
12
@
TTBR1
is
swapper_pg_dir
pfn
...
...
@@ -364,7 +364,7 @@ __turn_mmu_on_loc:
.
text
.
arm
ENTRY
(
secondary_startup_arm
)
THUMB
(
adr
r9
,
BSYM
(
1
f
)
)
@
Kernel
is
entered
in
ARM
.
THUMB
(
badr
r9
,
1
f
)
@
Kernel
is
entered
in
ARM
.
THUMB
(
bx
r9
)
@
If
this
is
a
Thumb
-
2
kernel
,
THUMB
(
.
thumb
)
@
switch
to
Thumb
now
.
THUMB
(1:
)
...
...
@@ -400,7 +400,7 @@ ENTRY(secondary_startup)
add
r3
,
r7
,
lr
ldrd
r4
,
[
r3
,
#
0
]
@
get
secondary_data
.
pgdir
ldr
r8
,
[
r3
,
#
8
]
@
get
secondary_data
.
swapper_pg_dir
adr
lr
,
BSYM
(
__enable_mmu
)
@
return
address
badr
lr
,
__enable_mmu
@
return
address
mov
r13
,
r12
@
__secondary_switched
address
ldr
r12
,
[
r10
,
#
PROCINFO_INITFUNC
]
add
r12
,
r12
,
r10
@
initialise
processor
...
...
arch/arm/kernel/sleep.S
View file @
05c9ca88
...
...
@@ -81,7 +81,7 @@ ENTRY(__cpu_suspend)
mov
r1
,
r4
@
size
of
save
block
add
r0
,
sp
,
#
8
@
pointer
to
save
block
bl
__cpu_suspend_save
adr
lr
,
BSYM
(
cpu_suspend_abort
)
badr
lr
,
cpu_suspend_abort
ldmfd
sp
!,
{
r0
,
pc
}
@
call
suspend
fn
ENDPROC
(
__cpu_suspend
)
.
ltorg
...
...
arch/arm/kvm/interrupts.S
View file @
05c9ca88
...
...
@@ -309,7 +309,7 @@ ENTRY(kvm_call_hyp)
THUMB
(
orr
r2
,
r2
,
#
PSR_T_BIT
)
msr
spsr_cxsf
,
r2
mrs
r1
,
ELR_hyp
ldr
r2
,
=
BSYM
(
panic
)
ldr
r2
,
=
panic
msr
ELR_hyp
,
r2
ldr
r0
,
=
\
panic_str
clrex
@
Clear
exclusive
monitor
...
...
arch/arm/lib/call_with_stack.S
View file @
05c9ca88
...
...
@@ -35,7 +35,7 @@ ENTRY(call_with_stack)
mov
r2
,
r0
mov
r0
,
r1
adr
lr
,
BSYM
(
1
f
)
badr
lr
,
1
f
ret
r2
1
:
ldr
lr
,
[
sp
]
...
...
arch/arm/mm/proc-v7m.S
View file @
05c9ca88
...
...
@@ -98,7 +98,7 @@ __v7m_setup:
str
r5
,
[
r0
,
V7M_SCB_SHPR3
]
@
set
PendSV
priority
@
SVC
to
run
the
kernel
in
this
mode
adr
r1
,
BSYM
(
1
f
)
badr
r1
,
1
f
ldr
r5
,
[
r12
,
#
11
*
4
]
@
read
the
SVC
vector
entry
str
r1
,
[
r12
,
#
11
*
4
]
@
write
the
temporary
SVC
vector
entry
mov
r6
,
lr
@
save
LR
...
...
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