Commit 39ad04cc authored by Catalin Marinas's avatar Catalin Marinas Committed by Russell King

ARM: 8017/1: Move asm macro get_thread_info to asm/assembler.h

asm/assembler.h is a better place for this macro since it is used by
asm files outside arch/arm/kernel/
Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
Tested-by: default avatarArun KS <getarunks@gmail.com>
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent a5d4506d
...@@ -174,6 +174,16 @@ ...@@ -174,6 +174,16 @@
restore_irqs_notrace \oldcpsr restore_irqs_notrace \oldcpsr
.endm .endm
/*
* Get current thread_info.
*/
.macro get_thread_info, rd
ARM( mov \rd, sp, lsr #13 )
THUMB( mov \rd, sp )
THUMB( lsr \rd, \rd, #13 )
mov \rd, \rd, lsl #13
.endm
#define USER(x...) \ #define USER(x...) \
9999: x; \ 9999: x; \
.pushsection __ex_table,"a"; \ .pushsection __ex_table,"a"; \
......
...@@ -236,11 +236,6 @@ ...@@ -236,11 +236,6 @@
movs pc, lr @ return & move spsr_svc into cpsr movs pc, lr @ return & move spsr_svc into cpsr
.endm .endm
.macro get_thread_info, rd
mov \rd, sp, lsr #13
mov \rd, \rd, lsl #13
.endm
@ @
@ 32-bit wide "mov pc, reg" @ 32-bit wide "mov pc, reg"
@ @
...@@ -306,12 +301,6 @@ ...@@ -306,12 +301,6 @@
.endm .endm
#endif /* ifdef CONFIG_CPU_V7M / else */ #endif /* ifdef CONFIG_CPU_V7M / else */
.macro get_thread_info, rd
mov \rd, sp
lsr \rd, \rd, #13
mov \rd, \rd, lsl #13
.endm
@ @
@ 32-bit wide "mov pc, reg" @ 32-bit wide "mov pc, reg"
@ @
......
...@@ -8,9 +8,12 @@ ...@@ -8,9 +8,12 @@
* it under the terms of the GNU General Public License version 2 as * it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation. * published by the Free Software Foundation.
*/ */
#include <linux/init.h>
#include <linux/linkage.h>
#include <asm/thread_info.h> #include <asm/thread_info.h>
#include <asm/vfpmacros.h> #include <asm/vfpmacros.h>
#include "../kernel/entry-header.S" #include <asm/assembler.h>
#include <asm/asm-offsets.h>
@ VFP entry point. @ VFP entry point.
@ @
......
...@@ -14,10 +14,13 @@ ...@@ -14,10 +14,13 @@
* r10 points at the start of the private FP workspace in the thread structure * r10 points at the start of the private FP workspace in the thread structure
* sp points to a struct pt_regs (as defined in include/asm/proc/ptrace.h) * sp points to a struct pt_regs (as defined in include/asm/proc/ptrace.h)
*/ */
#include <linux/init.h>
#include <linux/linkage.h>
#include <asm/thread_info.h> #include <asm/thread_info.h>
#include <asm/vfpmacros.h> #include <asm/vfpmacros.h>
#include <linux/kern_levels.h> #include <linux/kern_levels.h>
#include "../kernel/entry-header.S" #include <asm/assembler.h>
#include <asm/asm-offsets.h>
.macro DBGSTR, str .macro DBGSTR, str
#ifdef DEBUG #ifdef DEBUG
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment