summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--chip/it83xx/adc.c2
-rw-r--r--chip/it83xx/registers.h1
2 files changed, 3 insertions, 0 deletions
diff --git a/chip/it83xx/adc.c b/chip/it83xx/adc.c
index ba5f70e27e..ec662b0490 100644
--- a/chip/it83xx/adc.c
+++ b/chip/it83xx/adc.c
@@ -308,6 +308,8 @@ static void adc_accuracy_initialization(void)
{
/* bit3 : start adc accuracy initialization */
IT83XX_ADC_ADCSTS |= 0x08;
+ /* Enable automatic HW calibration. */
+ IT83XX_ADC_KDCTL |= IT83XX_ADC_AHCE;
/* short delay for adc accuracy initialization */
IT83XX_GCTRL_WNCKR = 0;
/* bit3 : stop adc accuracy initialization */
diff --git a/chip/it83xx/registers.h b/chip/it83xx/registers.h
index be346c6153..f925691dab 100644
--- a/chip/it83xx/registers.h
+++ b/chip/it83xx/registers.h
@@ -1044,6 +1044,7 @@ enum clock_gate_offsets {
#define IT83XX_ADC_ADCGCR REG8(IT83XX_ADC_BASE+0x03)
#define IT83XX_ADC_VCH0CTL REG8(IT83XX_ADC_BASE+0x04)
#define IT83XX_ADC_KDCTL REG8(IT83XX_ADC_BASE+0x05)
+#define IT83XX_ADC_AHCE BIT(7)
#define IT83XX_ADC_VCH1CTL REG8(IT83XX_ADC_BASE+0x06)
#define IT83XX_ADC_VCH1DATL REG8(IT83XX_ADC_BASE+0x07)
#define IT83XX_ADC_VCH1DATM REG8(IT83XX_ADC_BASE+0x08)