summaryrefslogtreecommitdiff
path: root/board/link/board.c
diff options
context:
space:
mode:
authorVic Yang <victoryang@chromium.org>2013-08-05 11:17:35 +0800
committerchrome-internal-fetch <chrome-internal-fetch@google.com>2013-08-27 23:20:33 +0000
commit5d014fd2dd5e92ad35a4f2dd1b58e0b1baebb65e (patch)
tree2078f9831177392f22ba202cbea4b09d69a9a710 /board/link/board.c
parent99f06c39aabd262653c96c589c5cd26fc1fb8389 (diff)
downloadchrome-ec-5d014fd2dd5e92ad35a4f2dd1b58e0b1baebb65e.tar.gz
Refactor PWM module
This unifies the PWM module interface for LM4 and STM32. Now PWM channels are defined in board.h/board.c. Instead of calling functions named pwm_set_fan_duty(x), one can now use pwm_set_duty(PWM_CH_FAN, x), which prevents additional functions added when we have a new PWM channel. BUG=chrome-os-partner:18343 TEST=Limit input current on Spring. TEST=Check power LED in S0/S3/S5 on Snow. TEST=Check keyboard backlight functionality on Link. TEST=Check fan speed control/detecting on Link. BRANCH=None Change-Id: Ibac4d79f72e65c94776d503558a7592f7db859dc Signed-off-by: Vic Yang <victoryang@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/64450 Reviewed-by: Randall Spangler <rspangler@chromium.org>
Diffstat (limited to 'board/link/board.c')
-rw-r--r--board/link/board.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/board/link/board.c b/board/link/board.c
index 3a00d16a03..618700f388 100644
--- a/board/link/board.c
+++ b/board/link/board.c
@@ -20,6 +20,7 @@
#include "peci.h"
#include "power_button.h"
#include "pwm.h"
+#include "pwm_data.h"
#include "registers.h"
#include "switch.h"
#include "temp_sensor.h"
@@ -181,6 +182,13 @@ const struct adc_t adc_channels[] = {
};
BUILD_ASSERT(ARRAY_SIZE(adc_channels) == ADC_CH_COUNT);
+/* PWM channels */
+const struct pwm_t pwm_channels[] = {
+ [PWM_CH_FAN] = {FAN_CH_CPU, PWM_CONFIG_HAS_RPM_MODE},
+ [PWM_CH_KBLIGHT] = {FAN_CH_KBLIGHT, 0},
+};
+BUILD_ASSERT(ARRAY_SIZE(pwm_channels) == PWM_CH_COUNT);
+
/* I2C ports */
const struct i2c_port_t i2c_ports[] = {
/* Note: battery and charger share a port. Only include it once in