ide: add ide_device_add()
[powerpc.git] / drivers / ide / pci / cs5520.c
index 4fb4320..a9e1caf 100644 (file)
@@ -123,16 +123,10 @@ static void __devinit init_hwif_cs5520(ide_hwif_t *hwif)
        hwif->set_pio_mode = &cs5520_set_pio_mode;
        hwif->set_dma_mode = &cs5520_set_dma_mode;
 
-       if (hwif->dma_base == 0) {
-               hwif->drives[1].autotune = hwif->drives[0].autotune = 1;
+       if (hwif->dma_base == 0)
                return;
-       }
 
        hwif->ide_dma_on = &cs5520_dma_on;
-
-       hwif->ultra_mask = 0;
-       hwif->swdma_mask = 0;
-       hwif->mwdma_mask = 0;
 }
 
 #define DECLARE_CS_DEV(name_str)                               \
@@ -160,9 +154,8 @@ static ide_pci_device_t cyrix_chipsets[] __devinitdata = {
  
 static int __devinit cs5520_init_one(struct pci_dev *dev, const struct pci_device_id *id)
 {
-       ide_hwif_t *hwif = NULL, *mate = NULL;
-       ata_index_t index;
        ide_pci_device_t *d = &cyrix_chipsets[id->driver_data];
+       u8 idx[4] = { 0xff, 0xff, 0xff, 0xff };
 
        ide_setup_pci_noise(dev, d);
 
@@ -178,29 +171,14 @@ static int __devinit cs5520_init_one(struct pci_dev *dev, const struct pci_devic
                return -ENODEV;
        }
 
-       index.all = 0xf0f0;
-
        /*
         *      Now the chipset is configured we can let the core
         *      do all the device setup for us
         */
 
-       ide_pci_setup_ports(dev, d, 14, &index);
-
-       if ((index.b.low & 0xf0) != 0xf0)
-               hwif = &ide_hwifs[index.b.low];
-       if ((index.b.high & 0xf0) != 0xf0)
-               mate = &ide_hwifs[index.b.high];
-
-       if (hwif)
-               probe_hwif_init(hwif);
-       if (mate)
-               probe_hwif_init(mate);
+       ide_pci_setup_ports(dev, d, 14, &idx[0]);
 
-       if (hwif)
-               ide_proc_register_port(hwif);
-       if (mate)
-               ide_proc_register_port(mate);
+       ide_device_add(idx);
 
        return 0;
 }