The following code:
if (dmi_name_in_vendors("Micro-Star") ||
pr_info(PREFIX "Enabling special treatment for EC from MSI.\n");
EC_FLAGS_MSI = 1;
enables MSI workaround on all notebooks, introducing delays into EC handling. The || should probably be && instead.
No, "Notebook" in vendor field of DMI is specific to MSI, as I am aware of.
So, || is intended.
I beg to differ. My laptop includes "Notebook" in the product name. Why would you think that this would somehow identify a MSI laptop?
Product Name: HP Pavilion dv2700 Notebook PC
If this _really_ is intended, can you explain why it would make any sense to enable a MSI bug workaround on my laptop? I still detect bogons.
I believe you may be misinterpreting the effect of the (poorly-named) function dmi_name_in_vendors(). It searches a haystack of several DMI strings, not just the DMI vendor string.
please provide output of dmidecode for your machine.
Created attachment 22902 [details]
please check if the patch http://bugzilla.kernel.org/attachment.cgi?id=22911
works for you.
Testing. By the way, the comment for ACPI_EC_DELAY is also wrong, it is a 500us delay, not a 500ms delay.
No, it is half a second. Same name was used for MSI workaround, and there it is in usec. There is a patch already, which splits MSI specific value apart.
The patch works, so please apply to mainline.
ACPI: EC: Rewrite DMI checks
shipped in Linux-2.6.32-rc3