Merge branches 'msm-fixes' and 'msm-video' of git://codeaurora.org/quic/kernel/dwalke...
[pandora-kernel.git] / arch / sh / kernel / cpu / irq / intc-sh5.c
index 96a2395..5af48f8 100644 (file)
@@ -76,39 +76,11 @@ int intc_evt_to_irq[(0xE20/0x20)+1] = {
 };
 
 static unsigned long intc_virt;
-
-static unsigned int startup_intc_irq(unsigned int irq);
-static void shutdown_intc_irq(unsigned int irq);
-static void enable_intc_irq(unsigned int irq);
-static void disable_intc_irq(unsigned int irq);
-static void mask_and_ack_intc(unsigned int);
-static void end_intc_irq(unsigned int irq);
-
-static struct irq_chip intc_irq_type = {
-       .name = "INTC",
-       .startup = startup_intc_irq,
-       .shutdown = shutdown_intc_irq,
-       .enable = enable_intc_irq,
-       .disable = disable_intc_irq,
-       .ack = mask_and_ack_intc,
-       .end = end_intc_irq
-};
-
 static int irlm;               /* IRL mode */
 
-static unsigned int startup_intc_irq(unsigned int irq)
-{
-       enable_intc_irq(irq);
-       return 0; /* never anything pending */
-}
-
-static void shutdown_intc_irq(unsigned int irq)
-{
-       disable_intc_irq(irq);
-}
-
-static void enable_intc_irq(unsigned int irq)
+static void enable_intc_irq(struct irq_data *data)
 {
+       unsigned int irq = data->irq;
        unsigned long reg;
        unsigned long bitmask;
 
@@ -126,8 +98,9 @@ static void enable_intc_irq(unsigned int irq)
        __raw_writel(bitmask, reg);
 }
 
-static void disable_intc_irq(unsigned int irq)
+static void disable_intc_irq(struct irq_data *data)
 {
+       unsigned int irq = data->irq;
        unsigned long reg;
        unsigned long bitmask;
 
@@ -142,15 +115,11 @@ static void disable_intc_irq(unsigned int irq)
        __raw_writel(bitmask, reg);
 }
 
-static void mask_and_ack_intc(unsigned int irq)
-{
-       disable_intc_irq(irq);
-}
-
-static void end_intc_irq(unsigned int irq)
-{
-       enable_intc_irq(irq);
-}
+static struct irq_chip intc_irq_type = {
+       .name = "INTC",
+       .irq_enable = enable_intc_irq,
+       .irq_disable = disable_intc_irq,
+};
 
 void __init plat_irq_setup(void)
 {