diff options
Diffstat (limited to 'drivers/misc/thinkpad_acpi.h')
-rw-r--r-- | drivers/misc/thinkpad_acpi.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/misc/thinkpad_acpi.h b/drivers/misc/thinkpad_acpi.h index e833ff3caf39..2fe4d61cc27f 100644 --- a/drivers/misc/thinkpad_acpi.h +++ b/drivers/misc/thinkpad_acpi.h | |||
@@ -349,6 +349,8 @@ enum { /* Fan control constants */ | |||
349 | 349 | ||
350 | TP_EC_FAN_FULLSPEED = 0x40, /* EC fan mode: full speed */ | 350 | TP_EC_FAN_FULLSPEED = 0x40, /* EC fan mode: full speed */ |
351 | TP_EC_FAN_AUTO = 0x80, /* EC fan mode: auto fan control */ | 351 | TP_EC_FAN_AUTO = 0x80, /* EC fan mode: auto fan control */ |
352 | |||
353 | TPACPI_FAN_LAST_LEVEL = 0x100, /* Use cached last-seen fan level */ | ||
352 | }; | 354 | }; |
353 | 355 | ||
354 | enum fan_status_access_mode { | 356 | enum fan_status_access_mode { |
@@ -375,6 +377,7 @@ static enum fan_status_access_mode fan_status_access_mode; | |||
375 | static enum fan_control_access_mode fan_control_access_mode; | 377 | static enum fan_control_access_mode fan_control_access_mode; |
376 | static enum fan_control_commands fan_control_commands; | 378 | static enum fan_control_commands fan_control_commands; |
377 | static u8 fan_control_initial_status; | 379 | static u8 fan_control_initial_status; |
380 | static u8 fan_control_desired_level; | ||
378 | static int fan_watchdog_maxinterval; | 381 | static int fan_watchdog_maxinterval; |
379 | 382 | ||
380 | struct mutex fan_mutex; | 383 | struct mutex fan_mutex; |
@@ -384,10 +387,13 @@ static acpi_handle fans_handle, gfan_handle, sfan_handle; | |||
384 | static int fan_init(struct ibm_init_struct *iibm); | 387 | static int fan_init(struct ibm_init_struct *iibm); |
385 | static void fan_exit(void); | 388 | static void fan_exit(void); |
386 | static int fan_get_status(u8 *status); | 389 | static int fan_get_status(u8 *status); |
390 | static int fan_get_status_safe(u8 *status); | ||
387 | static int fan_get_speed(unsigned int *speed); | 391 | static int fan_get_speed(unsigned int *speed); |
392 | static void fan_update_desired_level(u8 status); | ||
388 | static void fan_watchdog_fire(struct work_struct *ignored); | 393 | static void fan_watchdog_fire(struct work_struct *ignored); |
389 | static void fan_watchdog_reset(void); | 394 | static void fan_watchdog_reset(void); |
390 | static int fan_set_level(int level); | 395 | static int fan_set_level(int level); |
396 | static int fan_set_level_safe(int level); | ||
391 | static int fan_set_enable(void); | 397 | static int fan_set_enable(void); |
392 | static int fan_set_disable(void); | 398 | static int fan_set_disable(void); |
393 | static int fan_set_speed(int speed); | 399 | static int fan_set_speed(int speed); |