]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/ide/mips/swarm.c
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc
[linux-2.6-omap-h63xx.git] / drivers / ide / mips / swarm.c
index c2e29571b0075d3647d2978f24c281cf4d0e7d0f..956259fc09ba079ced2db086cdf6fbf6a63fcab5 100644 (file)
@@ -71,6 +71,7 @@ static int __devinit swarm_ide_probe(struct device *dev)
        u8 __iomem *base;
        phys_t offset, size;
        int i;
+       u8 idx[4] = { 0xff, 0xff, 0xff, 0xff };
 
        if (!SIBYTE_HAVE_IDE)
                return -ENODEV;
@@ -116,21 +117,19 @@ static int __devinit swarm_ide_probe(struct device *dev)
        default_hwif_mmiops(hwif);
        /* Prevent resource map manipulation.  */
        hwif->mmio = 1;
+       hwif->chipset = ide_generic;
        hwif->noprobe = 0;
 
        for (i = IDE_DATA_OFFSET; i <= IDE_STATUS_OFFSET; i++)
-               hwif->hw.io_ports[i] =
+               hwif->io_ports[i] =
                                (unsigned long)(base + ((0x1f0 + i) << 5));
-       hwif->hw.io_ports[IDE_CONTROL_OFFSET] =
+       hwif->io_ports[IDE_CONTROL_OFFSET] =
                                (unsigned long)(base + (0x3f6 << 5));
-       hwif->hw.irq = K_INT_GB_IDE;
+       hwif->irq = K_INT_GB_IDE;
 
-       memcpy(hwif->io_ports, hwif->hw.io_ports, sizeof(hwif->io_ports));
-       hwif->irq = hwif->hw.irq;
+       idx[0] = hwif->index;
 
-       probe_hwif_init(hwif);
-
-       ide_proc_register_port(hwif);
+       ide_device_add(idx, NULL);
 
        dev_set_drvdata(dev, hwif);