From 44140b3c57b0df88b60c618c10a829cebec45712 Mon Sep 17 00:00:00 2001 From: Vic Yang Date: Mon, 27 Feb 2012 14:08:02 -0800 Subject: EC_LPC_COMMAND_PWM_GET_FAN_RPM return target RPM Actual RPM is now read from LPC mapped space. Modify this command to return target RPM so we can verify EC receives target RPM. Signed-off-by: Vic Yang BUG=chrome-os-partner:8238 TEST=Get the same value after setting target RPM. Change-Id: I9bcc9edd327cec1311b51fd0fcbc4a43b353daff --- chip/lm4/pwm.c | 6 ++++++ common/pwm_commands.c | 2 +- include/pwm.h | 3 +++ 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/chip/lm4/pwm.c b/chip/lm4/pwm.c index f15b24ae02..07eb7371ec 100644 --- a/chip/lm4/pwm.c +++ b/chip/lm4/pwm.c @@ -63,6 +63,12 @@ int pwm_get_fan_rpm(void) } +int pwm_get_fan_target_rpm(void) +{ + return (LM4_FAN_FANCMD(FAN_CH_CPU) & MAX_RPM) * CPU_FAN_SCALE; +} + + int pwm_set_fan_target_rpm(int rpm) { /* Apply fan scaling */ diff --git a/common/pwm_commands.c b/common/pwm_commands.c index 7f30af8461..e186436d79 100644 --- a/common/pwm_commands.c +++ b/common/pwm_commands.c @@ -18,7 +18,7 @@ enum lpc_status pwm_command_get_fan_rpm(uint8_t *data) struct lpc_response_pwm_get_fan_rpm *r = (struct lpc_response_pwm_get_fan_rpm *)data; - r->rpm = pwm_get_fan_rpm(); + r->rpm = pwm_get_fan_target_rpm(); return EC_LPC_STATUS_SUCCESS; } diff --git a/include/pwm.h b/include/pwm.h index cbf11c5e95..022a21399b 100644 --- a/include/pwm.h +++ b/include/pwm.h @@ -20,6 +20,9 @@ int pwm_enable_fan(int enable); /* Gets the current fan RPM. */ int pwm_get_fan_rpm(void); +/* Get the target fan RPM. */ +int pwm_get_fan_target_rpm(void); + /* Sets the target fan RPM. Pass -1 to set fan to maximum. */ int pwm_set_fan_target_rpm(int rpm); -- cgit v1.2.1