]> err.no Git - linux-2.6/blobdiff - drivers/ide/ide.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
[linux-2.6] / drivers / ide / ide.c
index 7e6418fe3a84992e50785670d14a4be82efd5679..917c72dcd33dccc806c42c20d9662750ebe52b89 100644 (file)
@@ -165,7 +165,6 @@ static void ide_port_init_devices_data(ide_hwif_t *hwif)
        }
 }
 
-
 /*
  * init_ide_data() sets reasonable default values into all fields
  * of all instances of the hwifs and drives, but only on the first call.
@@ -188,7 +187,6 @@ static void __init init_ide_data (void)
 {
        unsigned int index;
        static unsigned long magic_cookie = MAGIC_COOKIE;
-       hw_regs_t hw;
 
        if (magic_cookie != MAGIC_COOKIE)
                return;         /* already initialized */
@@ -197,25 +195,8 @@ static void __init init_ide_data (void)
        /* Initialise all interface structures */
        for (index = 0; index < MAX_HWIFS; ++index) {
                ide_hwif_t *hwif = &ide_hwifs[index];
-               unsigned long io_addr = ide_default_io_base(index);
-               unsigned long ctl_addr = ide_default_io_ctl(io_addr);
 
                ide_init_port_data(hwif, index);
-
-#ifdef CONFIG_IDE_ARCH_OBSOLETE_INIT
-               memset(&hw, 0, sizeof(hw));
-               ide_std_init_ports(&hw, io_addr, ctl_addr);
-# ifdef CONFIG_PPC32
-               if (ppc_ide_md.ide_init_hwif)
-                       ppc_ide_md.ide_init_hwif(&hw, io_addr, 0, &hwif->irq);
-# endif
-               memcpy(hwif->io_ports, hw.io_ports, sizeof(hw.io_ports));
-#endif
-               hwif->noprobe = !hwif->io_ports[IDE_DATA_OFFSET];
-#if !defined(CONFIG_PPC32) || defined(CONFIG_PPLUS) || !defined(CONFIG_PCI)
-               hwif->irq =
-                       ide_init_default_irq(hwif->io_ports[IDE_DATA_OFFSET]);
-#endif
        }
 }
 
@@ -978,6 +959,7 @@ extern int probe_dtc2278;
 extern int probe_ht6560b;
 extern int probe_qd65xx;
 extern int cmd640_vlb;
+extern int probe_4drives;
 
 static int __initdata is_chipset_set;
 
@@ -1132,7 +1114,7 @@ static int __init ide_setup(char *s)
                 * (-8, -9, -10) are reserved to ease the hardcoding.
                 */
                static const char *ide_words[] = {
-                       "noprobe", "serialize", "minus3", "minus4",
+                       "minus1", "serialize", "minus3", "minus4",
                        "reset", "minus6", "ata66", "minus8", "minus9",
                        "minus10", "four", "qd65xx", "ht6560b", "cmd640_vlb",
                        "dtc2278", "umc8672", "ali14xx", NULL };
@@ -1189,19 +1171,9 @@ static int __init ide_setup(char *s)
 #endif
 #ifdef CONFIG_BLK_DEV_4DRIVES
                        case -11: /* "four" drives on one set of ports */
-                       {
-                               ide_hwif_t *mate = &ide_hwifs[hw^1];
-                               mate->drives[0].select.all ^= 0x20;
-                               mate->drives[1].select.all ^= 0x20;
-                               hwif->chipset = mate->chipset = ide_4drives;
-                               mate->irq = hwif->irq;
-                               memcpy(mate->io_ports, hwif->io_ports, sizeof(hwif->io_ports));
-                               hwif->mate = mate;
-                               mate->mate = hwif;
-                               hwif->serialized = mate->serialized = 1;
+                               probe_4drives = 1;
                                goto obsolete_option;
-                       }
-#endif /* CONFIG_BLK_DEV_4DRIVES */
+#endif
                        case -10: /* minus10 */
                        case -9: /* minus9 */
                        case -8: /* minus8 */
@@ -1229,9 +1201,7 @@ static int __init ide_setup(char *s)
                                hwif->serialized = hwif->mate->serialized = 1;
                                goto obsolete_option;
 
-                       case -1: /* "noprobe" */
-                               hwif->noprobe = 1;
-                               goto obsolete_option;
+                       case -1:
                        case 0:
                        case 1:
                        case 2: