Files
OpenCellular/include/pwm.h
Randall Spangler 2df9ba8814 Clean up pwm module
No functional changes.  But hey, I'm having lots of fun reformatting comments.

BUG=chrome-os-partner:15579
BRANCH=none
TEST=fanset -1; fanset 0; fanset 4000

Change-Id: Iddcea5b8e59fa6668cdd347b6d31155c28991521
Signed-off-by: Randall Spangler <rspangler@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/36585
Reviewed-by: Bill Richardson <wfrichar@chromium.org>
2012-10-25 17:03:44 -07:00

71 lines
1.5 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.
*
* Should be called by whatever function enables the power supply to the fan.
*/
void pwm_enable_fan(int enable);
/**
* Enable/disable fan RPM control logic.
*
* @param rpm_mode Enable (1) or disable (0) RPM control loop; when
* disabled, fan duty cycle will be used.
*/
void pwm_set_rpm_mode(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.
*
* @param rpm Target RPM; pass -1 to set fan to maximum.
*/
void pwm_set_fan_target_rpm(int rpm);
/**
* Set the fan PWM duty cycle (0-100), disabling the automatic control.
*/
void pwm_set_fan_duty(int percent);
/**
* Enable/disable the keyboard backlight.
*/
void 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).
*/
void pwm_set_keyboard_backlight(int percent);
#endif /* __CROS_EC_PWM_H */