static struct pata_platform_info bfin_pata_platform_data = {
        .ioport_shift = 2,
-       .irq_type = IRQF_TRIGGER_HIGH,
 };
 
 static struct resource bfin_pata_resources[] = {
        {
                .start = PATA_INT,
                .end = PATA_INT,
-               .flags = IORESOURCE_IRQ,
+               .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL,
        },
 };
 
 
 
 static struct pata_platform_info bfin_pata_platform_data = {
        .ioport_shift = 2,
-       .irq_type = IRQF_TRIGGER_HIGH,
 };
 
 static struct resource bfin_pata_resources[] = {
        {
                .start = PATA_INT,
                .end = PATA_INT,
-               .flags = IORESOURCE_IRQ,
+               .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL,
        },
 };
 
 
 #define PATA_INT       IRQ_PF5
 static struct pata_platform_info bfin_pata_platform_data = {
        .ioport_shift = 1,
-       .irq_flags = IRQF_TRIGGER_HIGH,
 };
 
 static struct resource bfin_pata_resources[] = {
        {
                .start = PATA_INT,
                .end = PATA_INT,
-               .flags = IORESOURCE_IRQ,
+               .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL,
        },
 };
 #elif defined(CF_IDE_NAND_CARD_USE_CF_IN_COMMON_MEMORY_MODE)
 
 
 static struct pata_platform_info bfin_pata_platform_data = {
        .ioport_shift = 2,
-       .irq_type = IRQF_TRIGGER_HIGH,
 };
 
 static struct resource bfin_pata_resources[] = {
        {
                .start = PATA_INT,
                .end = PATA_INT,
-               .flags = IORESOURCE_IRQ,
+               .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL,
        },
 };
 
 
 
 static struct pata_platform_info bfin_pata_platform_data = {
        .ioport_shift = 2,
-       .irq_type = IRQF_TRIGGER_HIGH,
 };
 
 static struct resource bfin_pata_resources[] = {
        {
                .start = PATA_INT,
                .end = PATA_INT,
-               .flags = IORESOURCE_IRQ,
+               .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHLEVEL,
        },
 };
 
 
        }
 
        irq_res = platform_get_resource(ofdev, IORESOURCE_IRQ, 0);
-       if (irq_res)
-               irq_res->flags = 0;
 
        prop = of_get_property(dn, "reg-shift", NULL);
        if (prop)
 
         */
        if (irq_res && irq_res->start > 0) {
                irq = irq_res->start;
-               irq_flags = irq_res->flags;
+               irq_flags = irq_res->flags & IRQF_TRIGGER_MASK;
        }
 
        /*
         * And the IRQ
         */
        irq_res = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
-       if (irq_res)
-               irq_res->flags = pp_info ? pp_info->irq_flags : 0;
 
        return __pata_platform_probe(&pdev->dev, io_res, ctl_res, irq_res,
                                     pp_info ? pp_info->ioport_shift : 0,
 
         * spacing used by ata_std_ports().
         */
        unsigned int ioport_shift;
-       /* 
-        * Indicate platform specific irq types and initial
-        * IRQ flags when call request_irq()
-        */
-       unsigned int irq_flags;
 };
 
 extern int __pata_platform_probe(struct device *dev,