aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/platform/x86/acerhdf.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2012-03-28 17:20:23 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2012-03-28 17:20:23 -0400
commit61e5191c9d96268746bd57ed55d035678a1a2cf9 (patch)
tree5ee75dc9aa9eab9cfc41c9fe0042d15f000ef2e6 /drivers/platform/x86/acerhdf.c
parentd2a2fc18d98d8ee2dec1542efc7f47beec256144 (diff)
parent86924de2a612b275a45e92ba80d6f47d4e97d620 (diff)
Merge branch 'for_linus' of git://cavan.codon.org.uk/platform-drivers-x86
Pull x86 platform driver updates from Matthew Garrett: "Some significant updates to samsung-laptop, additional hardware support for Toshibas, misc updates to various hardware and a new backlight driver for some Apple machines." Fix up trivial conflicts: geode Geos update happening next to net5501 support, and MSIC thermal platform support added twice. * 'for_linus' of git://cavan.codon.org.uk/platform-drivers-x86: (77 commits) acer-wmi: add quirk table for video backlight vendor mode drivers/platform/x86/amilo-rfkill.c::amilo_rfkill_probe() avoid NULL deref samsung-laptop: unregister ACPI video module for some well known laptops acer-wmi: No wifi rfkill on Sony machines thinkpad-acpi: recognize Lenovo as version string in newer V-series BIOS asus-wmi: don't update power and brightness when using scalar eeepc-wmi: split et2012 specific hacks eeepc-wmi: refine quirks handling asus-nb-wmi: set panel_power correctly asus-wmi: move WAPF variable into quirks_entry asus-wmi: store backlight power status for AIO machine asus-wmi: add scalar board brightness adj. support samsung-laptop: cleanup return type: mode_t vs umode_t drivers, samsung-laptop: fix usage of isalnum drivers, samsung-laptop: fix initialization of sabi_data in sabi_set_commandb asus-wmi: on/off bit is not set when reading the value eeepc-wmi: add extra keymaps for EP121 asus-nb-wmi: ignore useless keys acer-wmi: support Lenovo ideapad S205 Brazos wifi switch acer-wmi: fix out of input parameter size when set ...
Diffstat (limited to 'drivers/platform/x86/acerhdf.c')
-rw-r--r--drivers/platform/x86/acerhdf.c19
1 files changed, 8 insertions, 11 deletions
diff --git a/drivers/platform/x86/acerhdf.c b/drivers/platform/x86/acerhdf.c
index 760c6d7624fe..bc8384c6f3eb 100644
--- a/drivers/platform/x86/acerhdf.c
+++ b/drivers/platform/x86/acerhdf.c
@@ -244,12 +244,11 @@ static void acerhdf_change_fanstate(int state)
244 unsigned char cmd; 244 unsigned char cmd;
245 245
246 if (verbose) 246 if (verbose)
247 pr_notice("fan %s\n", (state == ACERHDF_FAN_OFF) ? 247 pr_notice("fan %s\n", state == ACERHDF_FAN_OFF ? "OFF" : "ON");
248 "OFF" : "ON");
249 248
250 if ((state != ACERHDF_FAN_OFF) && (state != ACERHDF_FAN_AUTO)) { 249 if ((state != ACERHDF_FAN_OFF) && (state != ACERHDF_FAN_AUTO)) {
251 pr_err("invalid fan state %d requested, setting to auto!\n", 250 pr_err("invalid fan state %d requested, setting to auto!\n",
252 state); 251 state);
253 state = ACERHDF_FAN_AUTO; 252 state = ACERHDF_FAN_AUTO;
254 } 253 }
255 254
@@ -264,19 +263,18 @@ static void acerhdf_check_param(struct thermal_zone_device *thermal)
264{ 263{
265 if (fanon > ACERHDF_MAX_FANON) { 264 if (fanon > ACERHDF_MAX_FANON) {
266 pr_err("fanon temperature too high, set to %d\n", 265 pr_err("fanon temperature too high, set to %d\n",
267 ACERHDF_MAX_FANON); 266 ACERHDF_MAX_FANON);
268 fanon = ACERHDF_MAX_FANON; 267 fanon = ACERHDF_MAX_FANON;
269 } 268 }
270 269
271 if (kernelmode && prev_interval != interval) { 270 if (kernelmode && prev_interval != interval) {
272 if (interval > ACERHDF_MAX_INTERVAL) { 271 if (interval > ACERHDF_MAX_INTERVAL) {
273 pr_err("interval too high, set to %d\n", 272 pr_err("interval too high, set to %d\n",
274 ACERHDF_MAX_INTERVAL); 273 ACERHDF_MAX_INTERVAL);
275 interval = ACERHDF_MAX_INTERVAL; 274 interval = ACERHDF_MAX_INTERVAL;
276 } 275 }
277 if (verbose) 276 if (verbose)
278 pr_notice("interval changed to: %d\n", 277 pr_notice("interval changed to: %d\n", interval);
279 interval);
280 thermal->polling_delay = interval*1000; 278 thermal->polling_delay = interval*1000;
281 prev_interval = interval; 279 prev_interval = interval;
282 } 280 }
@@ -587,8 +585,8 @@ static int acerhdf_check_hardware(void)
587 } 585 }
588 586
589 if (!bios_cfg) { 587 if (!bios_cfg) {
590 pr_err("unknown (unsupported) BIOS version %s/%s/%s, " 588 pr_err("unknown (unsupported) BIOS version %s/%s/%s, please report, aborting!\n",
591 "please report, aborting!\n", vendor, product, version); 589 vendor, product, version);
592 return -EINVAL; 590 return -EINVAL;
593 } 591 }
594 592
@@ -598,8 +596,7 @@ static int acerhdf_check_hardware(void)
598 */ 596 */
599 if (!kernelmode) { 597 if (!kernelmode) {
600 pr_notice("Fan control off, to enable do:\n"); 598 pr_notice("Fan control off, to enable do:\n");
601 pr_notice("echo -n \"enabled\" > " 599 pr_notice("echo -n \"enabled\" > /sys/class/thermal/thermal_zone0/mode\n");
602 "/sys/class/thermal/thermal_zone0/mode\n");
603 } 600 }
604 601
605 return 0; 602 return 0;