diff options
author | Magnus Damm <damm@igel.co.jp> | 2007-08-03 01:23:35 -0400 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2007-09-20 22:57:47 -0400 |
commit | d59645d6ba67337ff09369d9da4fc47f7dc361cc (patch) | |
tree | cd5e81d64ec7e6a4ea22a6f2e45ddf27e1140567 /arch/sh/boards/titan/setup.c | |
parent | ad89f87a84040a57c4a78ca2759b364f72f423ab (diff) |
sh: intc - remove redundant irq code for sh03, snapgear and titan
This patch removes redundant board specific interrupt code for boards
using sh775x processors and 4 IRQ lines in "Individual Interrupt Mode"
aka IRLM.
Three boards are affected: sh03, snapgear and titan.
The right way to do this is to use cpu specific code provided by intc.
A nice side effect is that sh03 now compiles, board not BROKEN any more.
Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh/boards/titan/setup.c')
-rw-r--r-- | arch/sh/boards/titan/setup.c | 30 |
1 files changed, 1 insertions, 29 deletions
diff --git a/arch/sh/boards/titan/setup.c b/arch/sh/boards/titan/setup.c index 606d25a4b870..5de3b2ad71af 100644 --- a/arch/sh/boards/titan/setup.c +++ b/arch/sh/boards/titan/setup.c | |||
@@ -12,38 +12,10 @@ | |||
12 | #include <asm/titan.h> | 12 | #include <asm/titan.h> |
13 | #include <asm/io.h> | 13 | #include <asm/io.h> |
14 | 14 | ||
15 | static struct ipr_data ipr_irq_table[] = { | ||
16 | /* IRQ, IPR idx, shift, prio */ | ||
17 | { TITAN_IRQ_WAN, 3, 12, 8 }, /* eth0 (WAN) */ | ||
18 | { TITAN_IRQ_LAN, 3, 8, 8 }, /* eth1 (LAN) */ | ||
19 | { TITAN_IRQ_MPCIA, 3, 4, 8 }, /* mPCI A (top) */ | ||
20 | { TITAN_IRQ_USB, 3, 0, 8 }, /* mPCI B (bottom), USB */ | ||
21 | }; | ||
22 | |||
23 | static unsigned long ipr_offsets[] = { /* stolen from setup-sh7750.c */ | ||
24 | 0xffd00004UL, /* 0: IPRA */ | ||
25 | 0xffd00008UL, /* 1: IPRB */ | ||
26 | 0xffd0000cUL, /* 2: IPRC */ | ||
27 | 0xffd00010UL, /* 3: IPRD */ | ||
28 | }; | ||
29 | |||
30 | static struct ipr_desc ipr_irq_desc = { | ||
31 | .ipr_offsets = ipr_offsets, | ||
32 | .nr_offsets = ARRAY_SIZE(ipr_offsets), | ||
33 | |||
34 | .ipr_data = ipr_irq_table, | ||
35 | .nr_irqs = ARRAY_SIZE(ipr_irq_table), | ||
36 | |||
37 | .chip = { | ||
38 | .name = "IPR-titan", | ||
39 | }, | ||
40 | }; | ||
41 | static void __init init_titan_irq(void) | 15 | static void __init init_titan_irq(void) |
42 | { | 16 | { |
43 | /* enable individual interrupt mode for externals */ | 17 | /* enable individual interrupt mode for externals */ |
44 | ipr_irq_enable_irlm(); | 18 | plat_irq_setup_pins(IRQ_MODE_IRQ); |
45 | /* register ipr irqs */ | ||
46 | register_ipr_controller(&ipr_irq_desc); | ||
47 | } | 19 | } |
48 | 20 | ||
49 | static struct sh_machine_vector mv_titan __initmv = { | 21 | static struct sh_machine_vector mv_titan __initmv = { |