@@ -642,7 +642,7 @@ class AnalogDriverESP32V1 : public AnalogDriverBase {
642642 if (cfg.adc_calibration_active ) {
643643 #if ADC_CALI_SCHEME_CURVE_FITTING_SUPPORTED
644644 adc_cali_delete_scheme_curve_fitting (adc_cali_handle);
645- #elif !defined(CONFIG_IDF_TARGET_ESP32H2)
645+ #elif !defined(CONFIG_IDF_TARGET_ESP32H2) && !defined(CONFIG_IDF_TARGET_ESP32P4)
646646 adc_cali_delete_scheme_line_fitting (adc_cali_handle);
647647 #endif
648648 }
@@ -757,21 +757,23 @@ class AnalogDriverESP32V1 : public AnalogDriverBase {
757757 // Calibration is applied to an ADC unit (not per channel).
758758
759759 // setup calibration only when requested
760+ esp_err_t err = ESP_OK;
761+
760762 if (adc_cali_handle == NULL ) {
761763 #if ADC_CALI_SCHEME_CURVE_FITTING_SUPPORTED
762764 // curve fitting is preferred
763765 adc_cali_curve_fitting_config_t cali_config;
764766 cali_config.unit_id = cfg.adc_unit ;
765767 cali_config.atten = (adc_atten_t )cfg.adc_attenuation ;
766768 cali_config.bitwidth = (adc_bitwidth_t )cfg.adc_bit_width ;
767- auto err = adc_cali_create_scheme_curve_fitting (&cali_config, &adc_cali_handle);
768- #elif !defined(CONFIG_IDF_TARGET_ESP32H2)
769+ err = adc_cali_create_scheme_curve_fitting (&cali_config, &adc_cali_handle);
770+ #elif !defined(CONFIG_IDF_TARGET_ESP32H2) && !defined(CONFIG_IDF_TARGET_ESP32P4)
769771 // line fitting is the alternative
770772 adc_cali_line_fitting_config_t cali_config;
771773 cali_config.unit_id = cfg.adc_unit ;
772774 cali_config.atten = (adc_atten_t )cfg.adc_attenuation ;
773775 cali_config.bitwidth = (adc_bitwidth_t )cfg.adc_bit_width ;
774- auto err = adc_cali_create_scheme_line_fitting (&cali_config, &adc_cali_handle);
776+ err = adc_cali_create_scheme_line_fitting (&cali_config, &adc_cali_handle);
775777 #endif
776778 if (err != ESP_OK) {
777779 LOGE (" creating calibration handle failed for ADC%d with atten %d and bitwidth %d" ,
0 commit comments