summaryrefslogtreecommitdiff
path: root/board
diff options
context:
space:
mode:
authorVic (Chun-Ju) Yang <victoryang@chromium.org>2013-12-19 14:51:06 +0800
committerchrome-internal-fetch <chrome-internal-fetch@google.com>2013-12-20 05:08:02 +0000
commit1b1d2e999c7349e896121abec9515270a76072f9 (patch)
treea39a10a56111ba2618da232771220bc685d4ef75 /board
parentc455d255076f50b217f35115f2591bc5ce5f0c69 (diff)
downloadchrome-ec-1b1d2e999c7349e896121abec9515270a76072f9.tar.gz
mec1322: ADC driver
ADC driver for MEC1322 with ADC interrupt support. BUG=chrome-os-partner:24107 TEST=Read single channel TEST=Read all channels BRANCH=None Change-Id: I89d196c7fd78e736575e2c368b65cfb1ec651004 Signed-off-by: Vic (Chun-Ju) Yang <victoryang@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/180832
Diffstat (limited to 'board')
-rw-r--r--board/mec1322_evb/board.c11
-rw-r--r--board/mec1322_evb/board.h10
2 files changed, 21 insertions, 0 deletions
diff --git a/board/mec1322_evb/board.c b/board/mec1322_evb/board.c
index 6a26913ca8..5d7dd42bb9 100644
--- a/board/mec1322_evb/board.c
+++ b/board/mec1322_evb/board.c
@@ -4,6 +4,8 @@
*/
/* MEC1322 eval board-specific configuration */
+#include "adc.h"
+#include "adc_chip.h"
#include "fan.h"
#include "gpio.h"
#include "i2c.h"
@@ -44,6 +46,15 @@ const struct gpio_alt_func gpio_alt_funcs[] = {
};
const int gpio_alt_funcs_count = ARRAY_SIZE(gpio_alt_funcs);
+/* ADC channels */
+const struct adc_t adc_channels[] = {
+ [ADC_CH_1] = {"ADC1", 1, 1, 0, MEC1322_ADC_CH(1)},
+ [ADC_CH_2] = {"ADC2", 1, 1, 0, MEC1322_ADC_CH(2)},
+ [ADC_CH_3] = {"ADC3", 1, 1, 0, MEC1322_ADC_CH(3)},
+ [ADC_CH_4] = {"ADC4", 1, 1, 0, MEC1322_ADC_CH(4)},
+};
+BUILD_ASSERT(ARRAY_SIZE(adc_channels) == ADC_CH_COUNT);
+
/* Physical fans. These are logically separate from pwm_channels. */
const struct fan_t fans[] = {
{.flags = FAN_USE_RPM_MODE,
diff --git a/board/mec1322_evb/board.h b/board/mec1322_evb/board.h
index fa4f53609c..a4142a9fdc 100644
--- a/board/mec1322_evb/board.h
+++ b/board/mec1322_evb/board.h
@@ -12,6 +12,7 @@
#define CONFIG_SYSTEM_UNLOCKED /* Allow dangerous commands */
#define CONFIG_WATCHDOG_HELP
#define CONFIG_FANS 1
+#define CONFIG_ADC
/* Modules we want to exclude */
#undef CONFIG_EEPROM
@@ -23,6 +24,15 @@
#ifndef __ASSEMBLER__
+enum adc_channel {
+ ADC_CH_1 = 0,
+ ADC_CH_2,
+ ADC_CH_3,
+ ADC_CH_4,
+
+ ADC_CH_COUNT
+};
+
/* GPIO signal list */
enum gpio_signal {
GPIO_LED1 = 0,