Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc
[sfrench/cifs-2.6.git] / drivers / w1 / masters / ds1wm.c
index 763bc73e50708daa47362c17cd6c6c45964a89dc..688e435b4d9a60cb56097ee85c82ec3b662bd479 100644 (file)
@@ -85,7 +85,7 @@ static struct {
 };
 
 struct ds1wm_data {
-       void            *map;
+       void            __iomem *map;
        int             bus_shift; /* # of shifts to calc register offsets */
        struct platform_device *pdev;
        struct ds1wm_platform_data *pdata;
@@ -307,7 +307,7 @@ static void ds1wm_search(void *data, u8 search_type,
                rom_id |= (unsigned long long) r << (i * 4);
 
        }
-       dev_dbg(&ds1wm_data->pdev->dev, "found 0x%08llX", rom_id);
+       dev_dbg(&ds1wm_data->pdev->dev, "found 0x%08llX\n", rom_id);
 
        ds1wm_write_register(ds1wm_data, DS1WM_CMD, ~DS1WM_CMD_SRA);
        ds1wm_reset(ds1wm_data);
@@ -361,11 +361,12 @@ static int ds1wm_probe(struct platform_device *pdev)
                goto err1;
        }
        ds1wm_data->irq = res->start;
-       ds1wm_data->active_high = (res->flags & IORESOURCE_IRQ_HIGHEDGE) ?
-               1 : 0;
+       ds1wm_data->active_high = plat->active_high;
 
-       set_irq_type(ds1wm_data->irq, ds1wm_data->active_high ?
-                       IRQ_TYPE_EDGE_RISING : IRQ_TYPE_EDGE_FALLING);
+       if (res->flags & IORESOURCE_IRQ_HIGHEDGE)
+               set_irq_type(ds1wm_data->irq, IRQ_TYPE_EDGE_RISING);
+       if (res->flags & IORESOURCE_IRQ_LOWEDGE)
+               set_irq_type(ds1wm_data->irq, IRQ_TYPE_EDGE_FALLING);
 
        ret = request_irq(ds1wm_data->irq, ds1wm_isr, IRQF_DISABLED,
                          "ds1wm", ds1wm_data);