aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorChanghwan Youn <chaos.youn@samsung.com>2012-04-24 17:33:14 -0400
committerKukjin Kim <kgene.kim@samsung.com>2012-05-15 03:59:33 -0400
commiteeed66e3a50f4d23d542498b17861ffadcdaf8ec (patch)
treebf6174b31af6d222680896635ff2044ddb6201d5 /arch
parentc9ce7dbdbf25d7245ead1923c11620d4c8013592 (diff)
ARM: EXYNOS: Redefine IRQ_MCT_L0,1 definition
Redefine IRQ_MCT_L0,1 irq definition as it is changed in rev1 of EXYNOS5. Signed-off-by: Changhwan Youn <chaos.youn@samsung.com> Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/mach-exynos/include/mach/irqs.h4
-rw-r--r--arch/arm/mach-exynos/mct.c17
2 files changed, 13 insertions, 8 deletions
diff --git a/arch/arm/mach-exynos/include/mach/irqs.h b/arch/arm/mach-exynos/include/mach/irqs.h
index 116167524051..86e75f561b6f 100644
--- a/arch/arm/mach-exynos/include/mach/irqs.h
+++ b/arch/arm/mach-exynos/include/mach/irqs.h
@@ -320,6 +320,8 @@
320#define EXYNOS5_IRQ_SATA IRQ_SPI(115) 320#define EXYNOS5_IRQ_SATA IRQ_SPI(115)
321#define EXYNOS5_IRQ_NFCON IRQ_SPI(116) 321#define EXYNOS5_IRQ_NFCON IRQ_SPI(116)
322 322
323#define EXYNOS5_IRQ_MCT_L0 IRQ_SPI(120)
324#define EXYNOS5_IRQ_MCT_L1 IRQ_SPI(121)
323#define EXYNOS5_IRQ_MMC44 IRQ_SPI(123) 325#define EXYNOS5_IRQ_MMC44 IRQ_SPI(123)
324#define EXYNOS5_IRQ_MDMA1 IRQ_SPI(124) 326#define EXYNOS5_IRQ_MDMA1 IRQ_SPI(124)
325#define EXYNOS5_IRQ_FIMC_LITE0 IRQ_SPI(125) 327#define EXYNOS5_IRQ_FIMC_LITE0 IRQ_SPI(125)
@@ -399,8 +401,6 @@
399#define EXYNOS5_IRQ_FIMD1_SYSTEM COMBINER_IRQ(18, 6) 401#define EXYNOS5_IRQ_FIMD1_SYSTEM COMBINER_IRQ(18, 6)
400 402
401#define EXYNOS5_IRQ_EINT0 COMBINER_IRQ(23, 0) 403#define EXYNOS5_IRQ_EINT0 COMBINER_IRQ(23, 0)
402#define EXYNOS5_IRQ_MCT_L0 COMBINER_IRQ(23, 1)
403#define EXYNOS5_IRQ_MCT_L1 COMBINER_IRQ(23, 2)
404#define EXYNOS5_IRQ_MCT_G0 COMBINER_IRQ(23, 3) 404#define EXYNOS5_IRQ_MCT_G0 COMBINER_IRQ(23, 3)
405#define EXYNOS5_IRQ_MCT_G1 COMBINER_IRQ(23, 4) 405#define EXYNOS5_IRQ_MCT_G1 COMBINER_IRQ(23, 4)
406#define EXYNOS5_IRQ_MCT_G2 COMBINER_IRQ(23, 5) 406#define EXYNOS5_IRQ_MCT_G2 COMBINER_IRQ(23, 5)
diff --git a/arch/arm/mach-exynos/mct.c b/arch/arm/mach-exynos/mct.c
index 897d9a9cf226..b601fb8a408b 100644
--- a/arch/arm/mach-exynos/mct.c
+++ b/arch/arm/mach-exynos/mct.c
@@ -388,6 +388,7 @@ static int __cpuinit exynos4_local_timer_setup(struct clock_event_device *evt)
388{ 388{
389 struct mct_clock_event_device *mevt; 389 struct mct_clock_event_device *mevt;
390 unsigned int cpu = smp_processor_id(); 390 unsigned int cpu = smp_processor_id();
391 int mct_lx_irq;
391 392
392 mevt = this_cpu_ptr(&percpu_mct_tick); 393 mevt = this_cpu_ptr(&percpu_mct_tick);
393 mevt->evt = evt; 394 mevt->evt = evt;
@@ -414,14 +415,18 @@ static int __cpuinit exynos4_local_timer_setup(struct clock_event_device *evt)
414 415
415 if (mct_int_type == MCT_INT_SPI) { 416 if (mct_int_type == MCT_INT_SPI) {
416 if (cpu == 0) { 417 if (cpu == 0) {
418 mct_lx_irq = soc_is_exynos4210() ? EXYNOS4_IRQ_MCT_L0 :
419 EXYNOS5_IRQ_MCT_L0;
417 mct_tick0_event_irq.dev_id = mevt; 420 mct_tick0_event_irq.dev_id = mevt;
418 evt->irq = EXYNOS4_IRQ_MCT_L0; 421 evt->irq = mct_lx_irq;
419 setup_irq(EXYNOS4_IRQ_MCT_L0, &mct_tick0_event_irq); 422 setup_irq(mct_lx_irq, &mct_tick0_event_irq);
420 } else { 423 } else {
424 mct_lx_irq = soc_is_exynos4210() ? EXYNOS4_IRQ_MCT_L1 :
425 EXYNOS5_IRQ_MCT_L1;
421 mct_tick1_event_irq.dev_id = mevt; 426 mct_tick1_event_irq.dev_id = mevt;
422 evt->irq = EXYNOS4_IRQ_MCT_L1; 427 evt->irq = mct_lx_irq;
423 setup_irq(EXYNOS4_IRQ_MCT_L1, &mct_tick1_event_irq); 428 setup_irq(mct_lx_irq, &mct_tick1_event_irq);
424 irq_set_affinity(EXYNOS4_IRQ_MCT_L1, cpumask_of(1)); 429 irq_set_affinity(mct_lx_irq, cpumask_of(1));
425 } 430 }
426 } else { 431 } else {
427 enable_percpu_irq(EXYNOS_IRQ_MCT_LOCALTIMER, 0); 432 enable_percpu_irq(EXYNOS_IRQ_MCT_LOCALTIMER, 0);
@@ -473,7 +478,7 @@ static void __init exynos4_timer_resources(void)
473 478
474static void __init exynos4_timer_init(void) 479static void __init exynos4_timer_init(void)
475{ 480{
476 if (soc_is_exynos4210()) 481 if ((soc_is_exynos4210()) || (soc_is_exynos5250()))
477 mct_int_type = MCT_INT_SPI; 482 mct_int_type = MCT_INT_SPI;
478 else 483 else
479 mct_int_type = MCT_INT_PPI; 484 mct_int_type = MCT_INT_PPI;