diff options
author | Vic (Chun-Ju) Yang <victoryang@chromium.org> | 2013-12-19 14:51:06 +0800 |
---|---|---|
committer | chrome-internal-fetch <chrome-internal-fetch@google.com> | 2013-12-20 05:08:02 +0000 |
commit | 1b1d2e999c7349e896121abec9515270a76072f9 (patch) | |
tree | a39a10a56111ba2618da232771220bc685d4ef75 /board | |
parent | c455d255076f50b217f35115f2591bc5ce5f0c69 (diff) | |
download | chrome-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.c | 11 | ||||
-rw-r--r-- | board/mec1322_evb/board.h | 10 |
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, |