diff options
author | Paul Mundt <lethal@linux-sh.org> | 2006-11-19 21:18:30 -0500 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2006-12-05 20:45:37 -0500 |
commit | 417528a2e35f46bc42721de5c4efd33a0eba019d (patch) | |
tree | 622d88ef2f82910063e841fd70d8720465c4dcef /arch/sh | |
parent | 716067f28931d46b9f460acbeae1478a337e58ec (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/sh')
-rw-r--r-- | arch/sh/Kconfig | 7 | ||||
-rw-r--r-- | arch/sh/kernel/cpu/sh4/setup-sh7780.c | 2 | ||||
-rw-r--r-- | arch/sh/kernel/timers/timer-cmt.c | 2 | ||||
-rw-r--r-- | arch/sh/kernel/timers/timer-mtu2.c | 2 | ||||
-rw-r--r-- | arch/sh/kernel/timers/timer-tmu.c | 2 |
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 | ||
406 | source "arch/sh/boards/renesas/r7780rp/Kconfig" | 406 | source "arch/sh/boards/renesas/r7780rp/Kconfig" |
407 | 407 | ||
408 | config 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 | |||
408 | config SH_PCLK_FREQ | 415 | config 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 | ||
81 | static struct intc2_data intc2_irq_table[] = { | 81 | static 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 | ||