summaryrefslogtreecommitdiff
path: root/arch/arm/mach-realview
diff options
context:
space:
mode:
authorCatalin Marinas <catalin.marinas@arm.com>2009-03-10 10:24:54 +0000
committerCatalin Marinas <catalin.marinas@arm.com>2009-03-10 10:24:54 +0000
commit77582cfa8a38fc71d1c46b3296a9f7ba4ad80275 (patch)
tree5d1e747b8d65aa5198d2203623800632e17685e9 /arch/arm/mach-realview
parent1745b660c1511279f83ec45e6404d484ba98e578 (diff)
Thumb-2: Add IT instructions to the kernel assembly code
With modified GNU assembler, these instructions are automatically generated. This patch is to be used if such gas isn't available. Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Diffstat (limited to 'arch/arm/mach-realview')
-rw-r--r--arch/arm/mach-realview/include/mach/debug-macro.S1
-rw-r--r--arch/arm/mach-realview/include/mach/entry-macro.S6
2 files changed, 7 insertions, 0 deletions
diff --git a/arch/arm/mach-realview/include/mach/debug-macro.S b/arch/arm/mach-realview/include/mach/debug-macro.S
index 932d8af18062..59a0396dd5f3 100644
--- a/arch/arm/mach-realview/include/mach/debug-macro.S
+++ b/arch/arm/mach-realview/include/mach/debug-macro.S
@@ -36,6 +36,7 @@
.macro addruart,rx
mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled?
+ ite eq
moveq \rx, #0x10000000
movne \rx, #0xfb000000 @ virtual base
orr \rx, \rx, #DEBUG_LL_UART_OFFSET
diff --git a/arch/arm/mach-realview/include/mach/entry-macro.S b/arch/arm/mach-realview/include/mach/entry-macro.S
index 340a5c276946..7bf198cd5b60 100644
--- a/arch/arm/mach-realview/include/mach/entry-macro.S
+++ b/arch/arm/mach-realview/include/mach/entry-macro.S
@@ -49,8 +49,11 @@
bic \irqnr, \irqstat, #0x1c00
cmp \irqnr, #29
+ it cc
cmpcc \irqnr, \irqnr
+ it ne
cmpne \irqnr, \tmp
+ it cs
cmpcs \irqnr, \irqnr
.endm
@@ -65,7 +68,9 @@
.macro test_for_ipi, irqnr, irqstat, base, tmp
bic \irqnr, \irqstat, #0x1c00
cmp \irqnr, #16
+ it cc
strcc \irqstat, [\base, #GIC_CPU_EOI]
+ it cs
cmpcs \irqnr, \irqnr
.endm
@@ -75,6 +80,7 @@
bic \irqnr, \irqstat, #0x1c00
mov \tmp, #0
cmp \irqnr, #29
+ itt eq
moveq \tmp, #1
streq \irqstat, [\base, #GIC_CPU_EOI]
cmp \tmp, #0