]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/irqchip/irq-s3c24xx.c
Merge tag 'drivers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm...
[karo-tx-linux.git] / drivers / irqchip / irq-s3c24xx.c
index 5e40b3424df8479a3f5728c8ba91901af526b5e1..bbcc944ed94ff4f51d2dd8921e9ca4b5e8bb09c5 100644 (file)
@@ -25,6 +25,7 @@
 #include <linux/ioport.h>
 #include <linux/device.h>
 #include <linux/irqdomain.h>
+#include <linux/irqchip/chained_irq.h>
 #include <linux/of.h>
 #include <linux/of_irq.h>
 #include <linux/of_address.h>
@@ -534,7 +535,7 @@ static void s3c24xx_clear_intc(struct s3c_irq_intc *intc)
        }
 }
 
-static struct s3c_irq_intc *s3c24xx_init_intc(struct device_node *np,
+static struct s3c_irq_intc * __init s3c24xx_init_intc(struct device_node *np,
                                       struct s3c_irq_data *irq_data,
                                       struct s3c_irq_intc *parent,
                                       unsigned long address)
@@ -587,7 +588,7 @@ static struct s3c_irq_intc *s3c24xx_init_intc(struct device_node *np,
                base = (void *)0xfd000000;
 
                intc->reg_mask = base + 0xa4;
-               intc->reg_pending = base + 0x08;
+               intc->reg_pending = base + 0xa8;
                irq_num = 24;
                irq_start = S3C2410_IRQ(32);
                break;
@@ -794,7 +795,7 @@ static struct s3c_irq_data init_s3c2412subint[32] = {
        { .type = S3C_IRQTYPE_LEVEL, .parent_irq = 21 }, /* CF */
 };
 
-void s3c2412_init_irq(void)
+void __init s3c2412_init_irq(void)
 {
        pr_info("S3C2412: IRQ Support\n");