Skip to content

Commit 9e73e83

Browse files
committed
Calling stop_dma function while retruning errors from start_dma after configuring dma
1 parent 09f84e3 commit 9e73e83

File tree

1 file changed

+3
-0
lines changed

1 file changed

+3
-0
lines changed

ports/espressif/common-hal/analogbufio/BufferedIn.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -138,6 +138,7 @@ static void start_dma(analogbufio_bufferedin_obj_t *self, adc_digi_convert_mode_
138138
#endif // DEBUG_ANALOGBUFIO
139139
esp_err_t err = adc_digi_initialize(&adc_dma_config);
140140
if (ESP_OK != err) {
141+
stop_dma(self);
141142
common_hal_analogbufio_bufferedin_deinit(self);
142143
mp_raise_ValueError_varg(translate("Unable to initialize ADC DMA controller, ErrorCode:%d"),err);
143144
}
@@ -172,11 +173,13 @@ static void start_dma(analogbufio_bufferedin_obj_t *self, adc_digi_convert_mode_
172173

173174
err = adc_digi_controller_configure(&dig_cfg);
174175
if (ESP_OK != err) {
176+
stop_dma(self);
175177
common_hal_analogbufio_bufferedin_deinit(self);
176178
mp_raise_ValueError_varg(translate("Unable to configure ADC DMA controller, ErrorCode:%d"),err);
177179
}
178180
err = adc_digi_start();
179181
if (ESP_OK != err) {
182+
stop_dma(self);
180183
common_hal_analogbufio_bufferedin_deinit(self);
181184
mp_raise_ValueError_varg(translate("Unable to start ADC DMA controller, ErrorCode:%d"),err);
182185
}

0 commit comments

Comments
 (0)