diff options
Diffstat (limited to 'drivers/ide/ide_platform.c')
| -rw-r--r-- | drivers/ide/ide_platform.c | 6 | 
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/ide/ide_platform.c b/drivers/ide/ide_platform.c index 542603b394e..962693b10a1 100644 --- a/drivers/ide/ide_platform.c +++ b/drivers/ide/ide_platform.c @@ -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;  |