diff options
author | Changhwan Youn <chaos.youn@samsung.com> | 2011-07-16 10:49:51 +0900 |
---|---|---|
committer | Kukjin Kim <kgene.kim@samsung.com> | 2011-07-20 23:28:28 +0900 |
commit | aab74d3e753649defa52ea43cbec1e91ebb4cc8e (patch) | |
tree | 452f0015f1a78897a8a22ee43ebdc7a8f576c55d /arch/arm/mach-exynos4/include | |
parent | e807acbc6fd1d5ff115f9a8eae0c1af6cf1c46c6 (diff) | |
download | op-kernel-dev-aab74d3e753649defa52ea43cbec1e91ebb4cc8e.zip op-kernel-dev-aab74d3e753649defa52ea43cbec1e91ebb4cc8e.tar.gz |
ARM: EXYNOS4: Add support external GIC
For full support of power modes, this patch adds implementation
external GIC on EXYNOS4.
External GIC of Exynos4 cannot support register banking so
several interrupt related code for CPU1 should be different
from that of CPU0.
Signed-off-by: Changhwan Youn <chaos.youn@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Diffstat (limited to 'arch/arm/mach-exynos4/include')
-rw-r--r-- | arch/arm/mach-exynos4/include/mach/entry-macro.S | 5 | ||||
-rw-r--r-- | arch/arm/mach-exynos4/include/mach/map.h | 1 |
2 files changed, 6 insertions, 0 deletions
diff --git a/arch/arm/mach-exynos4/include/mach/entry-macro.S b/arch/arm/mach-exynos4/include/mach/entry-macro.S index d8f38c2..4fad076 100644 --- a/arch/arm/mach-exynos4/include/mach/entry-macro.S +++ b/arch/arm/mach-exynos4/include/mach/entry-macro.S @@ -10,6 +10,7 @@ */ #include <mach/hardware.h> +#include <mach/map.h> #include <asm/hardware/gic.h> .macro disable_fiq @@ -18,6 +19,10 @@ .macro get_irqnr_preamble, base, tmp ldr \base, =gic_cpu_base_addr ldr \base, [\base] + mrc p15, 0, \tmp, c0, c0, 5 + and \tmp, \tmp, #3 + cmp \tmp, #1 + addeq \base, \base, #EXYNOS4_GIC_BANK_OFFSET .endm .macro arch_ret_to_user, tmp1, tmp2 diff --git a/arch/arm/mach-exynos4/include/mach/map.h b/arch/arm/mach-exynos4/include/mach/map.h index 0dbca26..3677356 100644 --- a/arch/arm/mach-exynos4/include/mach/map.h +++ b/arch/arm/mach-exynos4/include/mach/map.h @@ -61,6 +61,7 @@ #define EXYNOS4_PA_GIC_CPU 0x10480000 #define EXYNOS4_PA_GIC_DIST 0x10490000 +#define EXYNOS4_GIC_BANK_OFFSET 0x8000 #define EXYNOS4_PA_COREPERI 0x10500000 #define EXYNOS4_PA_TWD 0x10500600 |