summaryrefslogtreecommitdiffstats
path: root/kernel/drivers/char/i8k.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/drivers/char/i8k.c')
-rw-r--r--kernel/drivers/char/i8k.c18
1 files changed, 17 insertions, 1 deletions
diff --git a/kernel/drivers/char/i8k.c b/kernel/drivers/char/i8k.c
index a43048b5b..3c1a123f9 100644
--- a/kernel/drivers/char/i8k.c
+++ b/kernel/drivers/char/i8k.c
@@ -900,6 +900,21 @@ static struct dmi_system_id i8k_dmi_table[] __initdata = {
MODULE_DEVICE_TABLE(dmi, i8k_dmi_table);
+static struct dmi_system_id i8k_blacklist_dmi_table[] __initdata = {
+ {
+ /*
+ * CPU fan speed going up and down on Dell Studio XPS 8100
+ * for unknown reasons.
+ */
+ .ident = "Dell Studio XPS 8100",
+ .matches = {
+ DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+ DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "Studio XPS 8100"),
+ },
+ },
+ { }
+};
+
/*
* Probe for the presence of a supported laptop.
*/
@@ -911,7 +926,8 @@ static int __init i8k_probe(void)
/*
* Get DMI information
*/
- if (!dmi_check_system(i8k_dmi_table)) {
+ if (!dmi_check_system(i8k_dmi_table) ||
+ dmi_check_system(i8k_blacklist_dmi_table)) {
if (!ignore_dmi && !force)
return -ENODEV;