[PATCH] Fix snd-aoa irq conversion
authorAndreas Schwab <schwab@suse.de>
Mon, 10 Jul 2006 11:44:33 +0000 (04:44 -0700)
committerLinus Torvalds <torvalds@g5.osdl.org>
Mon, 10 Jul 2006 20:24:18 +0000 (13:24 -0700)
Use proper irq mapping interface for snd-aoa-i2sbus.

Signed-off-by: Andreas Schwab <schwab@suse.de>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Cc: Jaroslav Kysela <perex@suse.cz>
Cc: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
sound/aoa/soundbus/i2sbus/i2sbus-core.c

index 01c0724..4f0c17e 100644 (file)
@@ -129,9 +129,6 @@ static int i2sbus_add_dev(struct macio_dev *macio,
        if (strncmp(np->name, "i2s-", 4))
                return 0;
 
-       if (macio_irq_count(macio) != 3)
-               return 0;
-
        dev = kzalloc(sizeof(struct i2sbus_dev), GFP_KERNEL);
        if (!dev)
                return 0;
@@ -183,10 +180,10 @@ static int i2sbus_add_dev(struct macio_dev *macio,
                snprintf(dev->rnames[i], sizeof(dev->rnames[i]), rnames[i], np->name);
        }
        for (i=0;i<3;i++) {
-               if (request_irq(macio_irq(macio, i), ints[i], 0,
-                               dev->rnames[i], dev))
+               int irq = irq_of_parse_and_map(np, i);
+               if (request_irq(irq, ints[i], 0, dev->rnames[i], dev))
                        goto err;
-               dev->interrupts[i] = macio_irq(macio, i);
+               dev->interrupts[i] = irq;
        }
 
        for (i=0;i<3;i++) {