diff options
author | Ben Chen <ben.chen2@quanta.corp-partner.google.com> | 2021-04-09 16:00:58 +0800 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2021-04-13 06:06:02 +0000 |
commit | e764f94a625fb4aeac3ed92f42a2b5085fb19a14 (patch) | |
tree | 4cf80878ec944ab29120955497047d76ccc309c3 /board/asurada | |
parent | bd7ae55704486b916f5a88324b166c28913a2fc3 (diff) | |
download | chrome-ec-e764f94a625fb4aeac3ed92f42a2b5085fb19a14.tar.gz |
spherion: config ADC thermal sensor and KB_BL_EN
config adc temp senosr enable, re-config KB_BL_EN
to gpioG3 from GPIOI7
BUG=b:184885443
BRANCH=asurada
TEST=make buildall PASS
Change-Id: Ia0d12724ca33295f2817ee2a9a32dbff09aba87a
Signed-off-by: Ben Chen <ben.chen2@quanta.corp-partner.google.com>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2816939
Reviewed-by: Ting Shen <phoenixshen@chromium.org>
Diffstat (limited to 'board/asurada')
-rw-r--r-- | board/asurada/board.c | 26 | ||||
-rw-r--r-- | board/asurada/board.h | 12 |
2 files changed, 38 insertions, 0 deletions
diff --git a/board/asurada/board.c b/board/asurada/board.c index c2dbba4f6d..d9e6af8094 100644 --- a/board/asurada/board.c +++ b/board/asurada/board.c @@ -48,6 +48,7 @@ #include "usb_pd_tcpm.h" #include "usbc_ppc.h" +#define CPRINTSUSB(format, args...) cprints(CC_USBCHARGE, format, ## args) #define CPRINTS(format, args...) cprints(CC_USBCHARGE, format, ## args) #define CPRINTF(format, args...) cprintf(CC_USBCHARGE, format, ## args) @@ -278,6 +279,20 @@ struct motion_sensor_t motion_sensors[] = { }; const unsigned int motion_sensor_count = ARRAY_SIZE(motion_sensors); +/* ADC channels. Must be in the exactly same order as in enum adc_channel. */ +const struct adc_t adc_channels[] = { + /* Convert to mV (3000mV/1024). */ + {"VBUS_C0", ADC_MAX_MVOLT * 10, ADC_READ_MAX + 1, 0, CHIP_ADC_CH0}, + {"BOARD_ID_0", ADC_MAX_MVOLT, ADC_READ_MAX + 1, 0, CHIP_ADC_CH1}, + {"BOARD_ID_1", ADC_MAX_MVOLT, ADC_READ_MAX + 1, 0, CHIP_ADC_CH2}, + /* AMON/BMON gain = 17.97 */ + {"CHARGER_AMON_R", ADC_MAX_MVOLT * 1000 / 17.97, ADC_READ_MAX + 1, 0, + CHIP_ADC_CH3}, + {"VBUS_C1", ADC_MAX_MVOLT * 10, ADC_READ_MAX + 1, 0, CHIP_ADC_CH5}, + {"CHARGER_PMON", ADC_MAX_MVOLT, ADC_READ_MAX + 1, 0, CHIP_ADC_CH6}, +}; +BUILD_ASSERT(ARRAY_SIZE(adc_channels) == ADC_CH_COUNT); + /* PWM */ /* @@ -336,3 +351,14 @@ __override int syv682x_board_is_syv682c(int port) return board_get_version() > 2; } +#ifdef CONFIG_USB_PD_VBUS_MEASURE_ADC_EACH_PORT +enum adc_channel board_get_vbus_adc(int port) +{ + if (port == 0) + return ADC_VBUS_C0; + if (port == 1) + return ADC_VBUS_C1; + CPRINTSUSB("Unknown vbus adc port id: %d", port); + return ADC_VBUS_C0; +} +#endif /* CONFIG_USB_PD_VBUS_MEASURE_ADC_EACH_PORT */ diff --git a/board/asurada/board.h b/board/asurada/board.h index 08a56ac0b4..15d8af7f0a 100644 --- a/board/asurada/board.h +++ b/board/asurada/board.h @@ -105,6 +105,18 @@ enum sensor_id { SENSOR_COUNT, }; +enum adc_channel { + ADC_VBUS, /* ADC 0 */ + ADC_BOARD_ID_0, /* ADC 1 */ + ADC_BOARD_ID_1, /* ADC 2 */ + ADC_CHARGER_AMON_R, /* ADC 3 */ + ADC_VBUS_C1, /* ADC 5 */ + ADC_CHARGER_PMON, /* ADC 6 */ + + /* Number of ADC channels */ + ADC_CH_COUNT, +}; + enum pwm_channel { PWM_CH_LED1, PWM_CH_LED2, |