From 6771e388f4ed062121cf129a7f09ccf18779e198 Mon Sep 17 00:00:00 2001 From: gaoxu Date: Tue, 31 Dec 2024 11:39:32 +0800 Subject: [PATCH] fix(adc): fix adc oneshot apb cnts incosistency v5.4 closes https://github.com/espressif/esp-idf/issues/14502 --- components/esp_adc/adc_oneshot.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/components/esp_adc/adc_oneshot.c b/components/esp_adc/adc_oneshot.c index abdf36e2c8..440940674e 100644 --- a/components/esp_adc/adc_oneshot.c +++ b/components/esp_adc/adc_oneshot.c @@ -125,6 +125,7 @@ esp_err_t adc_oneshot_new_unit(const adc_oneshot_unit_init_cfg_t *init_config, a }; adc_oneshot_hal_init(&(unit->hal), &config); +#if SOC_ADC_DIG_CTRL_SUPPORTED && !SOC_ADC_RTC_CTRL_SUPPORTED //To enable the APB_SARADC periph if needed _lock_acquire(&s_ctx.mutex); s_ctx.apb_periph_ref_cnts++; @@ -132,6 +133,7 @@ esp_err_t adc_oneshot_new_unit(const adc_oneshot_unit_init_cfg_t *init_config, a adc_apb_periph_claim(); } _lock_release(&s_ctx.mutex); +#endif if (init_config->ulp_mode == ADC_ULP_MODE_DISABLE) { sar_periph_ctrl_adc_oneshot_power_acquire();