aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2006-11-19 21:18:30 -0500
committerPaul Mundt <lethal@linux-sh.org>2006-12-05 20:45:37 -0500
commit417528a2e35f46bc42721de5c4efd33a0eba019d (patch)
tree622d88ef2f82910063e841fd70d8720465c4dcef /arch
parent716067f28931d46b9f460acbeae1478a337e58ec (diff)
sh: Configurable timer IRQ.
All of the various CPU subtypes currently hardcode TIMER_IRQ, switch this to a config option in the few places we need this. This allows further removal of hardcoded IRQ headers.. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/sh/Kconfig7
-rw-r--r--arch/sh/kernel/cpu/sh4/setup-sh7780.c2
-rw-r--r--arch/sh/kernel/timers/timer-cmt.c2
-rw-r--r--arch/sh/kernel/timers/timer-mtu2.c2
-rw-r--r--arch/sh/kernel/timers/timer-tmu.c2
5 files changed, 11 insertions, 4 deletions
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ba7a15016307..b95dbb8db661 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -405,6 +405,13 @@ source "arch/sh/boards/renesas/rts7751r2d/Kconfig"
405 405
406source "arch/sh/boards/renesas/r7780rp/Kconfig" 406source "arch/sh/boards/renesas/r7780rp/Kconfig"
407 407
408config SH_TIMER_IRQ
409 int
410 default "28" if CPU_SUBTYPE_SH7780
411 default "86" if CPU_SUBTYPE_SH7619
412 default "140" if CPU_SUBTYPE_SH7206
413 default "16"
414
408config SH_PCLK_FREQ 415config SH_PCLK_FREQ
409 int "Peripheral clock frequency (in Hz)" 416 int "Peripheral clock frequency (in Hz)"
410 default "27000000" if CPU_SUBTYPE_SH73180 || CPU_SUBTYPE_SH7343 417 default "27000000" if CPU_SUBTYPE_SH73180 || CPU_SUBTYPE_SH7343
diff --git a/arch/sh/kernel/cpu/sh4/setup-sh7780.c b/arch/sh/kernel/cpu/sh4/setup-sh7780.c
index 814ddb226531..4a2b9e01b91f 100644
--- a/arch/sh/kernel/cpu/sh4/setup-sh7780.c
+++ b/arch/sh/kernel/cpu/sh4/setup-sh7780.c
@@ -79,7 +79,7 @@ static int __init sh7780_devices_setup(void)
79__initcall(sh7780_devices_setup); 79__initcall(sh7780_devices_setup);
80 80
81static struct intc2_data intc2_irq_table[] = { 81static struct intc2_data intc2_irq_table[] = {
82 { TIMER_IRQ, 0, 24, 0, INTC_TMU0_MSK, 2 }, 82 { 28, 0, 24, 0, INTC_TMU0_MSK, 2 },
83 { 21, 1, 0, 0, INTC_RTC_MSK, TIMER_PRIORITY }, 83 { 21, 1, 0, 0, INTC_RTC_MSK, TIMER_PRIORITY },
84 { 22, 1, 1, 0, INTC_RTC_MSK, TIMER_PRIORITY }, 84 { 22, 1, 1, 0, INTC_RTC_MSK, TIMER_PRIORITY },
85 { 23, 1, 2, 0, INTC_RTC_MSK, TIMER_PRIORITY }, 85 { 23, 1, 2, 0, INTC_RTC_MSK, TIMER_PRIORITY },
diff --git a/arch/sh/kernel/timers/timer-cmt.c b/arch/sh/kernel/timers/timer-cmt.c
index 30687383d4b0..24b03996da51 100644
--- a/arch/sh/kernel/timers/timer-cmt.c
+++ b/arch/sh/kernel/timers/timer-cmt.c
@@ -169,7 +169,7 @@ static int cmt_timer_init(void)
169 169
170 cmt_clock_enable(); 170 cmt_clock_enable();
171 171
172 setup_irq(TIMER_IRQ, &cmt_irq); 172 setup_irq(CONFIG_SH_TIMER_IRQ, &cmt_irq);
173 173
174 cmt0_clk.parent = clk_get("module_clk"); 174 cmt0_clk.parent = clk_get("module_clk");
175 175
diff --git a/arch/sh/kernel/timers/timer-mtu2.c b/arch/sh/kernel/timers/timer-mtu2.c
index 045b2aba13fa..92c98b5b11ea 100644
--- a/arch/sh/kernel/timers/timer-mtu2.c
+++ b/arch/sh/kernel/timers/timer-mtu2.c
@@ -167,7 +167,7 @@ static int mtu2_timer_init(void)
167 u8 tmp; 167 u8 tmp;
168 unsigned long interval; 168 unsigned long interval;
169 169
170 setup_irq(TIMER_IRQ, &mtu2_irq); 170 setup_irq(CONFIG_SH_TIMER_IRQ, &mtu2_irq);
171 171
172 mtu2_clk1.parent = clk_get("module_clk"); 172 mtu2_clk1.parent = clk_get("module_clk");
173 173
diff --git a/arch/sh/kernel/timers/timer-tmu.c b/arch/sh/kernel/timers/timer-tmu.c
index 24927015dc31..06a70db7386d 100644
--- a/arch/sh/kernel/timers/timer-tmu.c
+++ b/arch/sh/kernel/timers/timer-tmu.c
@@ -149,7 +149,7 @@ static int tmu_timer_init(void)
149{ 149{
150 unsigned long interval; 150 unsigned long interval;
151 151
152 setup_irq(TIMER_IRQ, &tmu_irq); 152 setup_irq(CONFIG_SH_TIMER_IRQ, &tmu_irq);
153 153
154 tmu0_clk.parent = clk_get("module_clk"); 154 tmu0_clk.parent = clk_get("module_clk");
155 155