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
/
ddb5xxx
/
ddb5477
/
irq_5477.c
diff --git
a/arch/mips/ddb5xxx/ddb5477/irq_5477.c
b/arch/mips/ddb5xxx/ddb5477/irq_5477.c
index
ab8b838
..
96249aa
100644
(file)
--- a/
arch/mips/ddb5xxx/ddb5477/irq_5477.c
+++ b/
arch/mips/ddb5xxx/ddb5477/irq_5477.c
@@
-53,14
+53,6
@@
vrc5477_irq_disable(unsigned int irq)
ll_vrc5477_irq_disable(irq - vrc5477_irq_base);
}
ll_vrc5477_irq_disable(irq - vrc5477_irq_base);
}
-static unsigned int vrc5477_irq_startup(unsigned int irq)
-{
- vrc5477_irq_enable(irq);
- return 0;
-}
-
-#define vrc5477_irq_shutdown vrc5477_irq_disable
-
static void
vrc5477_irq_ack(unsigned int irq)
{
static void
vrc5477_irq_ack(unsigned int irq)
{
@@
-89,29
+81,21
@@
vrc5477_irq_end(unsigned int irq)
ll_vrc5477_irq_enable( irq - vrc5477_irq_base);
}
ll_vrc5477_irq_enable( irq - vrc5477_irq_base);
}
-hw_irq_controller vrc5477_irq_controller = {
- "vrc5477_irq",
- vrc5477_irq_startup,
- vrc5477_irq_shutdown,
- vrc5477_irq_enable,
- vrc5477_irq_disable,
- vrc5477_irq_ack,
- vrc5477_irq_end,
- NULL /* no affinity stuff for UP */
+struct irq_chip vrc5477_irq_controller = {
+ .typename = "vrc5477_irq",
+ .ack = vrc5477_irq_ack,
+ .mask = vrc5477_irq_disable,
+ .mask_ack = vrc5477_irq_ack,
+ .unmask = vrc5477_irq_enable,
+ .end = vrc5477_irq_end
};
};
-void
-vrc5477_irq_init(u32 irq_base)
+void __init vrc5477_irq_init(u32 irq_base)
{
{
- extern irq_desc_t irq_desc[];
u32 i;
u32 i;
- for (i= irq_base; i< irq_base+ NUM_5477_IRQ; i++) {
- irq_desc[i].status = IRQ_DISABLED;
- irq_desc[i].action = NULL;
- irq_desc[i].depth = 1;
- irq_desc[i].handler = &vrc5477_irq_controller;
- }
+ for (i= irq_base; i< irq_base+ NUM_5477_IRQ; i++)
+ set_irq_chip(i, &vrc5477_irq_controller);
vrc5477_irq_base = irq_base;
}
vrc5477_irq_base = irq_base;
}