]> Pileus Git - ~andy/linux/blobdiff - drivers/ide/ide_platform.c
Merge branch 'for-linus' of git://ceph.newdream.net/git/ceph-client
[~andy/linux] / drivers / ide / ide_platform.c
index 542603b394e4a59997ca82940598b3a64f8edfd9..962693b10a1cfc8dc7aa71a8439329cc79f946f3 100644 (file)
@@ -19,6 +19,7 @@
 #include <linux/module.h>
 #include <linux/ata_platform.h>
 #include <linux/platform_device.h>
+#include <linux/interrupt.h>
 #include <linux/io.h>
 
 static void __devinit plat_ide_setup_ports(struct ide_hw *hw,
@@ -95,7 +96,10 @@ static int __devinit plat_ide_probe(struct platform_device *pdev)
        plat_ide_setup_ports(&hw, base, alt_base, pdata, res_irq->start);
        hw.dev = &pdev->dev;
 
-       d.irq_flags = res_irq->flags;
+       d.irq_flags = res_irq->flags & IRQF_TRIGGER_MASK;
+       if (res_irq->flags & IORESOURCE_IRQ_SHAREABLE)
+               d.irq_flags |= IRQF_SHARED;
+
        if (mmio)
                d.host_flags |= IDE_HFLAG_MMIO;