Re: [PATCH] x86: provide a DMI based port 0x80 I/O delay override.

From: Rene Herman
Date: Mon Dec 17 2007 - 08:24:29 EST


On 17-12-07 14:09, Ingo Molnar wrote:

-#ifndef CONFIG_UDELAY_IO_DELAY
-static int __init dmi_alternate_io_delay_port(const struct dmi_system_id *id)
+static int __init dmi_io_delay_0xed_port(const struct dmi_system_id *id)
{
- printk(KERN_NOTICE "%s: using alternate I/O delay port\n", id->ident);
- io_delay = alternate_io_delay;
+ printk(KERN_NOTICE "%s: using 0xed I/O delay port\n", id->ident);
+ io_delay_type = CONFIG_IO_DELAY_TYPE_0XED;
+
return 0;
}
This isn't correct. DMI shouldn't override the CONFIG choice or someone with matching DMI will have a defective CONFIG option. That's why I put all of it inside #ifndef.

no, the DMI quirk is just that: a quirk that makes boxes work. The DMI quirk takes precedence over just about any .config default, except an explicit boot-commandline override.

No, most definitely not. Having the user select udelay or none through the kernel config and then the kernel deciding "ah, you know what, I'll know better and use port access anyway" is _utterly_ broken behaviour. Software needs to listen to its master.

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