]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/pcmcia/omap_cf.c
[PATCH] Fbdev driver for IBM GXT4500P videocards
[linux-2.6-omap-h63xx.git] / drivers / pcmcia / omap_cf.c
index 01be47e72730b5fa847ac9e8245fa2e9d9cda23d..06bf7f48836ea9edcf0c1e503041a90f393e3ece 100644 (file)
@@ -102,7 +102,7 @@ static void omap_cf_timer(unsigned long _cf)
  * claim the card's IRQ.  It may also detect some card insertions, but
  * not removals; it can't always eliminate timer irqs.
  */
-static irqreturn_t omap_cf_irq(int irq, void *_cf, struct pt_regs *r)
+static irqreturn_t omap_cf_irq(int irq, void *_cf)
 {
        omap_cf_timer((unsigned long)_cf);
        return IRQ_HANDLED;
@@ -309,9 +309,10 @@ static int __devinit omap_cf_probe(struct device *dev)
        return 0;
 
 fail2:
-       iounmap((void __iomem *) cf->socket.io_offset);
        release_mem_region(cf->phys_cf, SZ_8K);
 fail1:
+       if (cf->socket.io_offset)
+               iounmap((void __iomem *) cf->socket.io_offset);
        free_irq(irq, cf);
 fail0:
        kfree(cf);