Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 177508
b: refs/heads/master
c: 463b4e4
h: refs/heads/master
v: v3
  • Loading branch information
Alan Jenkins authored and Len Brown committed Dec 9, 2009
1 parent 48e0a2c commit fced2dc
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 23 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 6b188a7b218cb33d918e72f24995341f949297d2
refs/heads/master: 463b4e474ed0905ffc27ee347648739dbfb03acc
43 changes: 21 additions & 22 deletions trunk/drivers/platform/x86/eeepc-laptop.c
Original file line number Diff line number Diff line change
Expand Up @@ -118,14 +118,14 @@ static const char *cm_setv[] = {
NULL, NULL, "PBPS", "TPDS"
};

#define EEEPC_EC "\\_SB.PCI0.SBRG.EC0."
#define EEEPC_EC_SC00 0x61
#define EEEPC_EC_FAN_PWM (EEEPC_EC_SC00 + 2) /* Fan PWM duty cycle (%) */
#define EEEPC_EC_FAN_HRPM (EEEPC_EC_SC00 + 5) /* High byte, fan speed (RPM) */
#define EEEPC_EC_FAN_LRPM (EEEPC_EC_SC00 + 6) /* Low byte, fan speed (RPM) */

#define EEEPC_EC_SFB0 0xD0
#define EEEPC_EC_FAN_CTRL (EEEPC_EC_SFB0 + 3) /* Byte containing SF25 */

#define EEEPC_EC_FAN_PWM EEEPC_EC "SC02" /* Fan PWM duty cycle (%) */
#define EEEPC_EC_SC02 0x63
#define EEEPC_EC_FAN_HRPM EEEPC_EC "SC05" /* High byte, fan speed (RPM) */
#define EEEPC_EC_FAN_LRPM EEEPC_EC "SC06" /* Low byte, fan speed (RPM) */
#define EEEPC_EC_FAN_CTRL EEEPC_EC "SFB3" /* Byte containing SF25 */
#define EEEPC_EC_SFB3 0xD3

/*
* This is the main structure, we can use it to store useful information
Expand Down Expand Up @@ -903,35 +903,34 @@ static int eeepc_hotk_restore(struct device *device)
*/
static int eeepc_get_fan_pwm(void)
{
int value = 0;
u8 value = 0;

read_acpi_int(NULL, EEEPC_EC_FAN_PWM, &value);
value = value * 255 / 100;
return (value);
ec_read(EEEPC_EC_FAN_PWM, &value);
return value * 255 / 100;
}

static void eeepc_set_fan_pwm(int value)
{
value = SENSORS_LIMIT(value, 0, 255);
value = value * 100 / 255;
ec_write(EEEPC_EC_SC02, value);
ec_write(EEEPC_EC_FAN_PWM, value);
}

static int eeepc_get_fan_rpm(void)
{
int high = 0;
int low = 0;
u8 high = 0;
u8 low = 0;

read_acpi_int(NULL, EEEPC_EC_FAN_HRPM, &high);
read_acpi_int(NULL, EEEPC_EC_FAN_LRPM, &low);
return (high << 8 | low);
ec_read(EEEPC_EC_FAN_HRPM, &high);
ec_read(EEEPC_EC_FAN_LRPM, &low);
return high << 8 | low;
}

static int eeepc_get_fan_ctrl(void)
{
int value = 0;
u8 value = 0;

read_acpi_int(NULL, EEEPC_EC_FAN_CTRL, &value);
ec_read(EEEPC_EC_FAN_CTRL, &value);
if (value & 0x02)
return 1; /* manual */
else
Expand All @@ -940,14 +939,14 @@ static int eeepc_get_fan_ctrl(void)

static void eeepc_set_fan_ctrl(int manual)
{
int value = 0;
u8 value = 0;

read_acpi_int(NULL, EEEPC_EC_FAN_CTRL, &value);
ec_read(EEEPC_EC_FAN_CTRL, &value);
if (manual == 1)
value |= 0x02;
else
value &= ~0x02;
ec_write(EEEPC_EC_SFB3, value);
ec_write(EEEPC_EC_FAN_CTRL, value);
}

static ssize_t store_sys_hwmon(void (*set)(int), const char *buf, size_t count)
Expand Down

0 comments on commit fced2dc

Please sign in to comment.