From 41cde665166da1aced2ece17f7b503c78cdb5c8f Mon Sep 17 00:00:00 2001 From: Bill Richardson Date: Wed, 5 Nov 2014 12:43:57 -0800 Subject: Samus: Handle fan startup in the EC, not the fan controller The fans on samus have a recommended minimum duty cycle of 20% while running, but 30% in order to start. We've been using the EC's built-in fan controller for the start requirement, but it has a minimum fast-start duty cycle of 50%. It turns out that that speed is noticeably noisy. This change handles the startup with logic in the EC instead, so that the fan only tries to spin at 30% initially (or if it drops too much below the minimum turning speed). BUG=chrome-os-partner:33429 BRANCH=ToT,samus TEST=make buildall -j Boot the system, let it idle with the browser windows closed, the browse a bit, then idle. Listen for changes to the fans. Before, I could hear the fans kick in and out as the AP load changed. Now it's much quieter. Change-Id: Id35215520c064eb6843686ec8bb5f3618dac6cf6 Signed-off-by: Bill Richardson Reviewed-on: https://chromium-review.googlesource.com/227658 Reviewed-by: Randall Spangler --- chip/lm4/fan.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'chip/lm4') diff --git a/chip/lm4/fan.c b/chip/lm4/fan.c index 1180d51906..01f561433d 100644 --- a/chip/lm4/fan.c +++ b/chip/lm4/fan.c @@ -98,7 +98,7 @@ int fan_get_rpm_target(int ch) return (LM4_FAN_FANCMD(ch) & MAX_RPM) * RPM_SCALE; } -void fan_set_rpm_target(int ch, int rpm) +test_mockable void fan_set_rpm_target(int ch, int rpm) { /* Apply fan scaling */ if (rpm > 0) -- cgit v1.2.1