git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fedora core 6 1.2949 + vserver 2.2.0
[linux-2.6.git]
/
arch
/
mips
/
vr41xx
/
nec-cmbvr4133
/
irq.c
diff --git
a/arch/mips/vr41xx/nec-cmbvr4133/irq.c
b/arch/mips/vr41xx/nec-cmbvr4133/irq.c
index
31db6b6
..
128ed8d
100644
(file)
--- a/
arch/mips/vr41xx/nec-cmbvr4133/irq.c
+++ b/
arch/mips/vr41xx/nec-cmbvr4133/irq.c
@@
-30,17
+30,6
@@
extern void init_8259A(int hoge);
extern int vr4133_rockhopper;
extern int vr4133_rockhopper;
-static unsigned int startup_i8259_irq(unsigned int irq)
-{
- enable_8259A_irq(irq - I8259_IRQ_BASE);
- return 0;
-}
-
-static void shutdown_i8259_irq(unsigned int irq)
-{
- disable_8259A_irq(irq - I8259_IRQ_BASE);
-}
-
static void enable_i8259_irq(unsigned int irq)
{
enable_8259A_irq(irq - I8259_IRQ_BASE);
static void enable_i8259_irq(unsigned int irq)
{
enable_8259A_irq(irq - I8259_IRQ_BASE);
@@
-56,20
+45,12
@@
static void ack_i8259_irq(unsigned int irq)
mask_and_ack_8259A(irq - I8259_IRQ_BASE);
}
mask_and_ack_8259A(irq - I8259_IRQ_BASE);
}
-static void end_i8259_irq(unsigned int irq)
-{
- if (!(irq_desc[irq].status & (IRQ_DISABLED|IRQ_INPROGRESS)))
- enable_8259A_irq(irq - I8259_IRQ_BASE);
-}
-
-static struct hw_interrupt_type i8259_irq_type = {
+static struct irq_chip i8259_irq_type = {
.typename = "XT-PIC",
.typename = "XT-PIC",
- .startup = startup_i8259_irq,
- .shutdown = shutdown_i8259_irq,
- .enable = enable_i8259_irq,
- .disable = disable_i8259_irq,
.ack = ack_i8259_irq,
.ack = ack_i8259_irq,
- .end = end_i8259_irq,
+ .mask = disable_i8259_irq,
+ .mask_ack = ack_i8259_irq,
+ .unmask = enable_i8259_irq,
};
static int i8259_get_irq_number(int irq)
};
static int i8259_get_irq_number(int irq)
@@
-104,7
+85,7
@@
void __init rockhopper_init_irq(void)
}
for (i = I8259_IRQ_BASE; i <= I8259_IRQ_LAST; i++)
}
for (i = I8259_IRQ_BASE; i <= I8259_IRQ_LAST; i++)
-
irq_desc[i].handler = &i8259_irq_type
;
+
set_irq_chip_and_handler(i, &i8259_irq_type, handle_level_irq)
;
setup_irq(I8259_SLAVE_IRQ, &i8259_slave_cascade);
setup_irq(I8259_SLAVE_IRQ, &i8259_slave_cascade);