summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVic Yang <victoryang@chromium.org>2012-02-27 14:08:02 -0800
committerVic Yang <victoryang@chromium.org>2012-02-27 15:11:42 -0800
commit44140b3c57b0df88b60c618c10a829cebec45712 (patch)
tree688aac6e034e231800b8efae4d9416faa58c531b
parentf40df60a9a963d43f1a3a0309f2c2f98f28dd1aa (diff)
downloadchrome-ec-44140b3c57b0df88b60c618c10a829cebec45712.tar.gz
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 <victoryang@chromium.org> BUG=chrome-os-partner:8238 TEST=Get the same value after setting target RPM. Change-Id: I9bcc9edd327cec1311b51fd0fcbc4a43b353daff
-rw-r--r--chip/lm4/pwm.c6
-rw-r--r--common/pwm_commands.c2
-rw-r--r--include/pwm.h3
3 files changed, 10 insertions, 1 deletions
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);