ide0: DISABLED, NO IRQ

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



When running the latest -mm kernel on our ia64 SN simulator,
we are seeing the following error, which results in a failed boot.


Uniform Multi-Platform E-IDE driver
Unknown Chipset addr = 0x000000028c000000 @ 96938783, PC = 0xa000000100302420
ide0: DISABLED, NO IRQ
ide0: failed to initialize IDE interface
mice: PS/2 mouse device common for all mice
VFS: Cannot open root device "hda2" or unknown-block(0,0)
Please append a correct "root=" boot option; here are the available partitions:


-------------

We also see this error when booting real hardware (we did not see it
in the past), though the boot is successful in this case.

For what it's worth, the following hack allows our simulator to boot.
My knowledge of the ide code is little to none, so I don't claim this
is a real fix, but hopefully it will give some insight into what
the problem might be.


John Keller
jpk@xxxxxxx
-----------


Index: linux/drivers/ide/ide-generic.c
===================================================================
--- linux.orig/drivers/ide/ide-generic.c        2008-04-22 15:57:38.000000000 -0500
+++ linux/drivers/ide/ide-generic.c     2008-04-22 16:12:28.575628712 -0500
@@ -124,7 +124,9 @@ static int __init ide_generic_init(void)

                        memset(&hw, 0, sizeof(hw));
                        ide_std_init_ports(&hw, io_addr, io_addr + 0x206);
+#if 0          /* Don't set default irq value, so autoprobe will be done. */
                        hw.irq = ide_default_irq(io_addr);
+#endif
                        ide_init_port_hw(hwif, &hw);

                        idx[i] = i;
Index: linux/drivers/ide/ide.c
===================================================================
--- linux.orig/drivers/ide/ide.c        2008-04-22 15:57:38.000000000 -0500
+++ linux/drivers/ide/ide.c     2008-04-22 16:10:18.123372600 -0500
@@ -98,8 +98,11 @@ static void ide_port_init_devices_data(i
  */
 void ide_init_port_data(ide_hwif_t *hwif, unsigned int index)
 {
+#if 0  /* This is called multiple times for the same hwif,
+        * because ide_find_port() returns the same hwif. */
        /* bulk initialize hwif & drive info with zeros */
        memset(hwif, 0, sizeof(ide_hwif_t));
+#endif

        /* fill in any non-zero initial values */
        hwif->index     = index;

---------

Output when booting with the above hack....


Uniform Multi-Platform E-IDE driver
Medusa disk: 8-bit read from 01f7 = 50 {DISK}
hda: Generic 1234, ATA DISK drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 224
hda: max request size: 128KiB
hda: 614400 sectors (314 MB) w/256KiB Cache, CHS=600/16/64
 hda: hda1 hda2
mice: PS/2 mouse device common for all mice
VFS: Mounted root (ext2 filesystem) readonly.
Freeing unused kernel memory: 1888kB freed
bash-2.05b# 

--
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux