2.4.20: ideN=... option stopped working

Richard Kettlewell (rjk@greenend.org.uk)
Sat, 21 Dec 2002 18:50:55 +0000


I have an inherited ancient PC with a weird IDE configuration that
requires ide1=0x170,0x376,14 specified on the kernel command line in
order to boot. This worked fine in 2.4.18 but not in 2.4.20. I
haven't checked 2.4.19.

After some investigation I found the relevant change and tried
reverting it. The resulting kernel works for me. Here's the diff:

========================================================================
--- drivers/ide/ide.c~ Thu Nov 28 23:53:13 2002
+++ drivers/ide/ide.c Sat Dec 21 18:25:59 2002
@@ -2456,7 +2456,6 @@
memcpy(hwif->io_ports, hwif->hw.io_ports, sizeof(hwif->hw.io_ports));
hwif->irq = hw->irq;
hwif->noprobe = 0;
- hwif->chipset = hw->chipset;

if (!initializing) {
ide_probe_module();
========================================================================

During my investigation I added some printk calls which make it
clearer what ide_setup objects to when it jumps to bad_option.
Perhaps these would be of more general use, diff below.

ttfn/rjk

========================================================================
--- drivers/ide/ide.c~ Thu Nov 28 23:53:13 2002
+++ drivers/ide/ide.c Sat Dec 21 18:25:59 2002
@@ -3427,12 +3426,16 @@
* Cryptic check to ensure chipset not already set for hwif:
*/
if (i > 0 || i <= -11) { /* is parameter a chipset name? */
- if (hwif->chipset != ide_unknown)
+ if (hwif->chipset != ide_unknown) {
+ printk(" -- chipset already specified");
goto bad_option; /* chipset already specified */
+ }
if (i <= -11 && i != -18 && hw != 0)
goto bad_hwif; /* chipset drivers are for "ide0=" only */
- if (i <= -11 && i != -18 && ide_hwifs[hw+1].chipset != ide_unknown)
+ if (i <= -11 && i != -18 && ide_hwifs[hw+1].chipset != ide_unknown) {
+ printk(" -- chipset for 2nd port already specified");
goto bad_option; /* chipset for 2nd port already specified */
+ }
printk("\n");
}

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/