summaryrefslogtreecommitdiff
path: root/board/asurada
diff options
context:
space:
mode:
authorBen Chen <ben.chen2@quanta.corp-partner.google.com>2021-04-09 16:00:58 +0800
committerCommit Bot <commit-bot@chromium.org>2021-04-13 06:06:02 +0000
commite764f94a625fb4aeac3ed92f42a2b5085fb19a14 (patch)
tree4cf80878ec944ab29120955497047d76ccc309c3 /board/asurada
parentbd7ae55704486b916f5a88324b166c28913a2fc3 (diff)
downloadchrome-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.c26
-rw-r--r--board/asurada/board.h12
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,