Files
OpenCellular/include/pwm.h
Bill Richardson 80c635ecab Add 'fanduty' command both EC console and ectool.
This forces the fan PWM duty cycle to a fixed percentage (0-100). It's only
used for airflow testing.

BUG=chrome-os-partner:10747
TEST=manual

Using this ectool, try

  ectool fanduty 0
  ectool pwmgetfanrpm
  ectool fanduty 50
  ectool pwmgetfanrpm
  ectool fanduty 100
  ectool pwmgetfanrpm

You should see (and hear) the fan speed up.  If you have an EC console, you
can run

  faninfo

and it should show that the 'Target:' is unrelated to the 'Actual:' value.

Change-Id: Iac332fb3ba63f96726cf7f64061b3ce22d2e76fd
Signed-off-by: Bill Richardson <wfrichar@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/25965
Reviewed-by: Randall Spangler <rspangler@chromium.org>
2012-06-22 15:56:57 -07:00

42 lines
1.2 KiB
C

/* Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file.
*/
/* PWM module for Chrome EC */
#ifndef __CROS_EC_PWM_H
#define __CROS_EC_PWM_H
#include "common.h"
/* Enable/disable the fan. This should be called by whatever function
* enables the power supply to the fan. */
int pwm_enable_fan(int enable);
/* Get the current fan RPM. */
int pwm_get_fan_rpm(void);
/* Get the target fan RPM. */
int pwm_get_fan_target_rpm(void);
/* Set the target fan RPM. Pass -1 to set fan to maximum. */
int pwm_set_fan_target_rpm(int rpm);
/* Set the fan PWM duty cycle (0-100), disabling the automatic control. */
int pwm_set_fan_duty(int percent);
/* Enable/disable the keyboard backlight. */
int pwm_enable_keyboard_backlight(int enable);
/* Get the keyboard backlight enable/disable status (1=enabled, 0=disabled). */
int pwm_get_keyboard_backlight_enabled(void);
/* Get the keyboard backlight percentage (0=off, 100=max). */
int pwm_get_keyboard_backlight(void);
/* Set the keyboard backlight percentage (0=off, 100=max). */
int pwm_set_keyboard_backlight(int percent);
#endif /* __CROS_EC_PWM_H */