ARM: 6938/1: fiq: Refactor {get,set}_fiq_regs() for Thumb-2
authorDave Martin <dave.martin@linaro.org>
Mon, 23 May 2011 11:22:10 +0000 (12:22 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Thu, 26 May 2011 09:31:06 +0000 (10:31 +0100)
commitdc2eb928a1bcf6a48f40c1f2ff21b66bdbf91a3c
tree3f877569ca481ad79378ed0e5932006434a1cc1e
parent4db70f73e56961b9bcdfd0c36c62847a18b7dbb5
ARM: 6938/1: fiq: Refactor {get,set}_fiq_regs() for Thumb-2

 * To remove the risk of inconvenient register allocation decisions
   by the compiler, these functions are separated out as pure
   assembler.

 * The apcs frame manipulation code is not applicable for Thumb-2
   (and also not easily compatible).  Since it's not essential to
   have a full frame on these leaf assembler functions, the frame
   manipulation is removed, in the interests of simplicity.

 * Split up ldm/stm instructions to be compatible with Thumb-2,
   as well as avoiding instruction forms deprecated on >= ARMv7.

Signed-off-by: Dave Martin <dave.martin@linaro.org>
Reviewed-by: Nicolas Pitre <nicolas.pitre@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/include/asm/fiq.h
arch/arm/kernel/Makefile
arch/arm/kernel/fiq.c
arch/arm/kernel/fiqasm.S [new file with mode: 0644]