diff options
author | Linus Torvalds <torvalds@woody.osdl.org> | 2006-12-12 11:14:46 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.osdl.org> | 2006-12-12 11:14:46 -0500 |
commit | d224a93d91610fc641fbc5b234b32fcb84045a30 (patch) | |
tree | f908bcf0c0c1c73dabfd00a134895cfb33aa9a5d /arch/sh/boards/se/7206/irq.c | |
parent | b57bd06655a028aba7b92e1c19c2093e7fcfb341 (diff) | |
parent | e9cfc147df99790a7d260e9d20b865fa31ec56da (diff) |
Merge master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6: (29 commits)
sh: Fixup SH-2 BUG() trap handling.
sh: Use early_param() for earlyprintk parsing.
sh: Fix .empty_zero_page alignment for PAGE_SIZE > 4096.
sh: Fixup .data.page_aligned.
sh: Hook up SH7722 scif ipr interrupts.
sh: Fixup sh_bios() trap handling.
sh: SH-MobileR SH7722 CPU support.
sh: Fixup dma_cache_sync() callers.
sh: Convert remaining remap_area_pages() users to ioremap_page_range().
sh: Fixup kernel_execve() for syscall cleanups.
sh: Fix get_wchan().
sh: BUG() handling through trapa vector.
rtc: rtc-sh: alarm support.
rtc: rtc-sh: fix rtc for out-by-one for the month.
sh: Kill off unused SE7619 I/O ops.
serial: sh-sci: Shut up various sci_rxd_in() gcc4 warnings.
sh: Split out atomic ops logically.
sh: Fix Solution Engine 7619 build.
sh: Trivial build fixes for SH-2 support.
sh: IPR IRQ updates for SH7619/SH7206.
...
Diffstat (limited to 'arch/sh/boards/se/7206/irq.c')
-rw-r--r-- | arch/sh/boards/se/7206/irq.c | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/arch/sh/boards/se/7206/irq.c b/arch/sh/boards/se/7206/irq.c index 3fb0c5f5b23a..27da88486f73 100644 --- a/arch/sh/boards/se/7206/irq.c +++ b/arch/sh/boards/se/7206/irq.c | |||
@@ -10,6 +10,7 @@ | |||
10 | #include <linux/irq.h> | 10 | #include <linux/irq.h> |
11 | #include <linux/io.h> | 11 | #include <linux/io.h> |
12 | #include <linux/irq.h> | 12 | #include <linux/irq.h> |
13 | #include <linux/interrupt.h> | ||
13 | #include <asm/se7206.h> | 14 | #include <asm/se7206.h> |
14 | 15 | ||
15 | #define INTSTS0 0x31800000 | 16 | #define INTSTS0 0x31800000 |
@@ -18,6 +19,13 @@ | |||
18 | #define INTMSK1 0x31800006 | 19 | #define INTMSK1 0x31800006 |
19 | #define INTSEL 0x31800008 | 20 | #define INTSEL 0x31800008 |
20 | 21 | ||
22 | #define IRQ0_IRQ 64 | ||
23 | #define IRQ1_IRQ 65 | ||
24 | #define IRQ3_IRQ 67 | ||
25 | |||
26 | #define INTC_IPR01 0xfffe0818 | ||
27 | #define INTC_ICR1 0xfffe0802 | ||
28 | |||
21 | static void disable_se7206_irq(unsigned int irq) | 29 | static void disable_se7206_irq(unsigned int irq) |
22 | { | 30 | { |
23 | unsigned short val; | 31 | unsigned short val; |
@@ -39,7 +47,7 @@ static void disable_se7206_irq(unsigned int irq) | |||
39 | case IRQ1_IRQ: | 47 | case IRQ1_IRQ: |
40 | msk0 |= 0x000f; | 48 | msk0 |= 0x000f; |
41 | break; | 49 | break; |
42 | case IRQ2_IRQ: | 50 | case IRQ3_IRQ: |
43 | msk0 |= 0x0f00; | 51 | msk0 |= 0x0f00; |
44 | msk1 |= 0x00ff; | 52 | msk1 |= 0x00ff; |
45 | break; | 53 | break; |
@@ -70,7 +78,7 @@ static void enable_se7206_irq(unsigned int irq) | |||
70 | case IRQ1_IRQ: | 78 | case IRQ1_IRQ: |
71 | msk0 &= ~0x000f; | 79 | msk0 &= ~0x000f; |
72 | break; | 80 | break; |
73 | case IRQ2_IRQ: | 81 | case IRQ3_IRQ: |
74 | msk0 &= ~0x0f00; | 82 | msk0 &= ~0x0f00; |
75 | msk1 &= ~0x00ff; | 83 | msk1 &= ~0x00ff; |
76 | break; | 84 | break; |
@@ -96,7 +104,7 @@ static void eoi_se7206_irq(unsigned int irq) | |||
96 | case IRQ1_IRQ: | 104 | case IRQ1_IRQ: |
97 | sts0 &= ~0x000f; | 105 | sts0 &= ~0x000f; |
98 | break; | 106 | break; |
99 | case IRQ2_IRQ: | 107 | case IRQ3_IRQ: |
100 | sts0 &= ~0x0f00; | 108 | sts0 &= ~0x0f00; |
101 | sts1 &= ~0x00ff; | 109 | sts1 &= ~0x00ff; |
102 | break; | 110 | break; |
@@ -106,7 +114,7 @@ static void eoi_se7206_irq(unsigned int irq) | |||
106 | } | 114 | } |
107 | 115 | ||
108 | static struct irq_chip se7206_irq_chip __read_mostly = { | 116 | static struct irq_chip se7206_irq_chip __read_mostly = { |
109 | .name = "SE7206-FPGA-IRQ", | 117 | .name = "SE7206-FPGA", |
110 | .mask = disable_se7206_irq, | 118 | .mask = disable_se7206_irq, |
111 | .unmask = enable_se7206_irq, | 119 | .unmask = enable_se7206_irq, |
112 | .mask_ack = disable_se7206_irq, | 120 | .mask_ack = disable_se7206_irq, |