Skip to content

Commit

Permalink
ARM: GIC: private a standard get_irqnr_preamble assembler macro
Browse files Browse the repository at this point in the history
Provide a standard get_irqnr_preamble assembler macro for platforms
to use, which retrieves the base address of the GIC CPU interface
from gic_cpu_base_addr.  Allow platforms to override this by defining
HAVE_GET_IRQNR_PREAMBLE.

Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Tested-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  • Loading branch information
Russell King committed Dec 14, 2010
1 parent bef8f9e commit 7627dc8
Show file tree
Hide file tree
Showing 7 changed files with 10 additions and 16 deletions.
7 changes: 7 additions & 0 deletions arch/arm/include/asm/hardware/entry-macro-gic.S
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,13 @@

#include <asm/hardware/gic.h>

#ifndef HAVE_GET_IRQNR_PREAMBLE
.macro get_irqnr_preamble, base, tmp
ldr \base, =gic_cpu_base_addr
ldr \base, [\base]
.endm
#endif

/*
* The interrupt numbering scheme is defined in the
* interrupt controller spec. To wit:
Expand Down
5 changes: 0 additions & 5 deletions arch/arm/mach-cns3xxx/include/mach/entry-macro.S
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,5 @@
.macro disable_fiq
.endm

.macro get_irqnr_preamble, base, tmp
ldr \base, =gic_cpu_base_addr
ldr \base, [\base]
.endm

.macro arch_ret_to_user, tmp1, tmp2
.endm
1 change: 1 addition & 0 deletions arch/arm/mach-omap2/include/mach/entry-macro.S
Original file line number Diff line number Diff line change
Expand Up @@ -170,6 +170,7 @@ omap_irq_base: .word 0


#ifdef CONFIG_ARCH_OMAP4
#define HAVE_GET_IRQNR_PREAMBLE
#include <asm/hardware/entry-macro-gic.S>

.macro get_irqnr_preamble, base, tmp
Expand Down
5 changes: 0 additions & 5 deletions arch/arm/mach-realview/include/mach/entry-macro.S
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,6 @@
.macro disable_fiq
.endm

.macro get_irqnr_preamble, base, tmp
ldr \base, =gic_cpu_base_addr
ldr \base, [\base]
.endm

.macro arch_ret_to_user, tmp1, tmp2
.endm

2 changes: 1 addition & 1 deletion arch/arm/mach-tegra/include/mach/entry-macro.S
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
#include <mach/io.h>

#if defined(CONFIG_ARM_GIC)

#define HAVE_GET_IRQNR_PREAMBLE
#include <asm/hardware/entry-macro-gic.S>

/* Uses the GIC interrupt controller built into the cpu */
Expand Down
1 change: 1 addition & 0 deletions arch/arm/mach-ux500/include/mach/entry-macro.S
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
* warranty of any kind, whether express or implied.
*/
#include <mach/hardware.h>
#define HAVE_GET_IRQNR_PREAMBLE
#include <asm/hardware/entry-macro-gic.S>

.macro disable_fiq
Expand Down
5 changes: 0 additions & 5 deletions arch/arm/mach-vexpress/include/mach/entry-macro.S
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,5 @@
.macro disable_fiq
.endm

.macro get_irqnr_preamble, base, tmp
ldr \base, =gic_cpu_base_addr
ldr \base, [\base]
.endm

.macro arch_ret_to_user, tmp1, tmp2
.endm

0 comments on commit 7627dc8

Please sign in to comment.