linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Pali Rohár" <pali.rohar@gmail.com>
To: Guenter Roeck <linux@roeck-us.net>, Arnd Bergmann <arnd@arndb.de>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: "Jean Delvare" <jdelvare@suse.de>,
	"Gabriele Mazzotta" <gabriele.mzt@gmail.com>,
	"Steven Honeyman" <stevenhoneyman@gmail.com>,
	"Jochen Eisinger" <jochen@penguin-breeder.org>,
	linux-kernel@vger.kernel.org, "Pali Rohár" <pali.rohar@gmail.com>
Subject: [PATCH 3/3] i8k: Remove laptop specific config data (fan_mult, fan_max) from driver
Date: Tue,  9 Dec 2014 21:07:01 +0100	[thread overview]
Message-ID: <1418155621-21644-4-git-send-email-pali.rohar@gmail.com> (raw)
In-Reply-To: <1418155621-21644-1-git-send-email-pali.rohar@gmail.com>

Now we have autodetection code for fan multiplier and maximal fan speed so we do
not need to have those constants for each laptop in kernel driver code.

Signed-off-by: Pali Rohár <pali.rohar@gmail.com>
---
!!!Please do not apply this patch until all affected machines will be tested!!!

I tested autodetection code only on Dell Latitude E6440 (where it worked).
Other machines which needs to be tested:

Dell Latitude D520
Dell Latitude E6540
Dell Precision WorkStation 490
Dell Studio
Dell XPS M140 (MXC051)
---
 drivers/char/i8k.c |   88 +---------------------------------------------------
 1 file changed, 1 insertion(+), 87 deletions(-)

diff --git a/drivers/char/i8k.c b/drivers/char/i8k.c
index 8bdbed2..bf74644 100644
--- a/drivers/char/i8k.c
+++ b/drivers/char/i8k.c
@@ -725,42 +725,6 @@ static int __init i8k_init_hwmon(void)
 	return 0;
 }
 
-struct i8k_config_data {
-	int fan_mult;
-	int fan_max;
-};
-
-enum i8k_configs {
-	DELL_LATITUDE_D520,
-	DELL_LATITUDE_E6540,
-	DELL_PRECISION_490,
-	DELL_STUDIO,
-	DELL_XPS_M140,
-};
-
-static const struct i8k_config_data i8k_config_data[] = {
-	[DELL_LATITUDE_D520] = {
-		.fan_mult = 1,
-		.fan_max = I8K_FAN_TURBO,
-	},
-	[DELL_LATITUDE_E6540] = {
-		.fan_mult = 1,
-		.fan_max = I8K_FAN_HIGH,
-	},
-	[DELL_PRECISION_490] = {
-		.fan_mult = 1,
-		.fan_max = I8K_FAN_TURBO,
-	},
-	[DELL_STUDIO] = {
-		.fan_mult = 1,
-		.fan_max = I8K_FAN_HIGH,
-	},
-	[DELL_XPS_M140] = {
-		.fan_mult = 1,
-		.fan_max = I8K_FAN_HIGH,
-	},
-};
-
 static struct dmi_system_id i8k_dmi_table[] __initdata = {
 	{
 		.ident = "Dell Inspiron",
@@ -784,30 +748,6 @@ static struct dmi_system_id i8k_dmi_table[] __initdata = {
 		},
 	},
 	{
-		.ident = "Dell Latitude D520",
-		.matches = {
-			DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-			DMI_MATCH(DMI_PRODUCT_NAME, "Latitude D520"),
-		},
-		.driver_data = (void *)&i8k_config_data[DELL_LATITUDE_D520],
-	},
-	{
-		.ident = "Dell Latitude E6440",
-		.matches = {
-			DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-			DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6440"),
-		},
-		.driver_data = (void *)&i8k_config_data[DELL_LATITUDE_E6540],
-	},
-	{
-		.ident = "Dell Latitude E6540",
-		.matches = {
-			DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-			DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6540"),
-		},
-		.driver_data = (void *)&i8k_config_data[DELL_LATITUDE_E6540],
-	},
-	{
 		.ident = "Dell Latitude 2",
 		.matches = {
 			DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
@@ -822,22 +762,13 @@ static struct dmi_system_id i8k_dmi_table[] __initdata = {
 		},
 	},
 	{
-		.ident = "Dell Inspiron 3",
+		.ident = "Dell Inspiron 4",
 		.matches = {
 			DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
 			DMI_MATCH(DMI_PRODUCT_NAME, "MP061"),
 		},
 	},
 	{
-		.ident = "Dell Precision 490",
-		.matches = {
-			DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
-			DMI_MATCH(DMI_PRODUCT_NAME,
-				  "Precision WorkStation 490"),
-		},
-		.driver_data = (void *)&i8k_config_data[DELL_PRECISION_490],
-	},
-	{
 		.ident = "Dell Precision",
 		.matches = {
 			DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
@@ -864,7 +795,6 @@ static struct dmi_system_id i8k_dmi_table[] __initdata = {
 			DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
 			DMI_MATCH(DMI_PRODUCT_NAME, "Studio"),
 		},
-		.driver_data = (void *)&i8k_config_data[DELL_STUDIO],
 	},
 	{
 		.ident = "Dell XPS M140",
@@ -872,7 +802,6 @@ static struct dmi_system_id i8k_dmi_table[] __initdata = {
 			DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
 			DMI_MATCH(DMI_PRODUCT_NAME, "MXC051"),
 		},
-		.driver_data = (void *)&i8k_config_data[DELL_XPS_M140],
 	},
 	{ }
 };
@@ -884,8 +813,6 @@ MODULE_DEVICE_TABLE(dmi, i8k_dmi_table);
  */
 static int __init i8k_probe(void)
 {
-	const struct i8k_config_data *conf;
-	const struct dmi_system_id *id;
 	int fan, val, ret;
 
 	/*
@@ -915,19 +842,6 @@ static int __init i8k_probe(void)
 			return -ENODEV;
 	}
 
-	/*
-	 * Autodetect fan multiplier and maximal fan speed from dmi config
-	 * Values specified in module parameters override values from dmi
-	 */
-	id = dmi_first_match(i8k_dmi_table);
-	if (id && id->driver_data) {
-		conf = id->driver_data;
-		if (fan_mult <= 0 && conf->fan_mult > 0)
-			fan_mult = conf->fan_mult;
-		if (fan_max <= 0 && conf->fan_max > 0)
-			fan_max = conf->fan_max;
-	}
-
 	if (fan_mult <= 0) {
 		/*
 		 * Autodetect fan multiplier for each fan based on nominal rpm
-- 
1.7.9.5


  parent reply	other threads:[~2014-12-09 20:07 UTC|newest]

Thread overview: 73+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-12-09 20:06 [PATCH 0/3] i8k: Rework fan_mult and fan_max code Pali Rohár
2014-12-09 20:06 ` [PATCH 1/3] i8k: cosmetic: distinguish between fan speed and fan rpm Pali Rohár
2014-12-09 20:23   ` Guenter Roeck
2014-12-09 20:39     ` Pali Rohár
2014-12-09 22:49       ` Guenter Roeck
2014-12-09 20:07 ` [PATCH 2/3] i8k: Autodetect maximal fan speed and fan RPM multiplier Pali Rohár
2014-12-09 20:20   ` Guenter Roeck
2014-12-09 20:23     ` Pali Rohár
2014-12-09 22:42       ` Guenter Roeck
2014-12-10 11:50         ` Pali Rohár
2014-12-10 14:08           ` Guenter Roeck
2014-12-18 11:13             ` Pali Rohár
2014-12-19 18:33               ` Guenter Roeck
2014-12-09 20:07 ` Pali Rohár [this message]
2014-12-10 11:51   ` [PATCH 3/3] i8k: Remove laptop specific config data (fan_mult, fan_max) from driver Pali Rohár
2014-12-10 13:32     ` Gabriele Mazzotta
2014-12-18 11:08       ` Pali Rohár
2014-12-18 15:08         ` Valdis.Kletnieks
2014-12-18 16:34           ` Pali Rohár
2014-12-18 16:44             ` Valdis.Kletnieks
2014-12-25 21:54         ` Gabriele Mazzotta
2014-12-27 14:13           ` Gabriele Mazzotta
2014-12-28  8:22             ` Pali Rohár
2014-12-28  8:28               ` Guenter Roeck
2014-12-28  8:46                 ` Pali Rohár
2014-12-28 15:25                   ` Gabriele Mazzotta
2014-12-28 15:48                     ` Pali Rohár
2014-12-28 16:02                       ` Gabriele Mazzotta
2014-12-28 16:07                         ` Pali Rohár
2014-12-28 16:17                           ` Gabriele Mazzotta
2014-12-29 12:22                             ` Pali Rohár
2014-12-29 12:50                               ` Gabriele Mazzotta
2014-12-30  7:35                                 ` Guenter Roeck
2014-12-17 17:54     ` Pali Rohár
2014-12-17 18:20       ` Steven Honeyman
2014-12-18  9:02         ` Valdis.Kletnieks
2014-12-18 11:11         ` Pali Rohár
2014-12-10 13:41   ` Gabriele Mazzotta
2014-12-19 18:04 ` [PATCH v2 1/2] i8k: Autodetect maximal fan speed and fan RPM multiplier Pali Rohár
2014-12-19 18:32   ` Guenter Roeck
2014-12-19 18:51     ` Pali Rohár
2014-12-19 19:28       ` Guenter Roeck
2014-12-20  8:57         ` Pali Rohár
2014-12-20 12:04           ` Guenter Roeck
2014-12-20 12:18             ` Pali Rohár
2014-12-20 12:44               ` Guenter Roeck
2014-12-20 12:54                 ` Pali Rohár
2014-12-20 17:20                   ` Guenter Roeck
2014-12-20 17:27                     ` Steven Honeyman
2014-12-20 18:07                       ` Guenter Roeck
2014-12-21  9:06                         ` Pali Rohár
2014-12-20 18:38   ` Guenter Roeck
2014-12-21  9:13     ` Pali Rohár
2014-12-21 11:47       ` Guenter Roeck
2014-12-20 19:02   ` Guenter Roeck
2014-12-21  9:15     ` Pali Rohár
2014-12-21  9:20   ` [PATCH v3] " Pali Rohár
2014-12-21 11:57     ` Guenter Roeck
2014-12-21 12:09       ` Pali Rohár
2014-12-21 12:23         ` Guenter Roeck
2014-12-21 16:37           ` Pali Rohár
2014-12-21 16:55             ` Steven Honeyman
2014-12-21 17:25               ` Pali Rohár
2014-12-21 17:23     ` [PATCH v4] " Pali Rohár
2014-12-21 18:27       ` Guenter Roeck
2014-12-21 18:40         ` Pali Rohár
2014-12-21 18:51           ` Guenter Roeck
2014-12-21 19:56             ` Pali Rohár
2014-12-21 19:51       ` Guenter Roeck
2014-12-22 15:07         ` Pali Rohár
2014-12-23 13:52           ` Guenter Roeck
2014-12-23 19:11             ` Pali Rohár
2014-12-19 18:04 ` [PATCH v2 2/2] i8k: Remove DMI config data for Latitude E6x40 Pali Rohár

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1418155621-21644-4-git-send-email-pali.rohar@gmail.com \
    --to=pali.rohar@gmail.com \
    --cc=arnd@arndb.de \
    --cc=gabriele.mzt@gmail.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=jdelvare@suse.de \
    --cc=jochen@penguin-breeder.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@roeck-us.net \
    --cc=stevenhoneyman@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).