diff --git a/components/esp_driver_isp/src/isp_core.c b/components/esp_driver_isp/src/isp_core.c index 854233c6064..14f3aad5ea1 100644 --- a/components/esp_driver_isp/src/isp_core.c +++ b/components/esp_driver_isp/src/isp_core.c @@ -110,14 +110,15 @@ esp_err_t esp_isp_new_processor(const esp_isp_processor_cfg_t *proc_config, isp_ if (out_clk_freq_hz != proc_config->clk_hz) { ESP_LOGW(TAG, "precision loss, real output frequency: %"PRIu32"Hz", out_clk_freq_hz); } - ; - isp_hal_init(&proc->hal, proc->proc_id); + esp_clk_tree_enable_src((soc_module_clk_t)clk_src, true); PERIPH_RCC_ATOMIC() { isp_ll_select_clk_source(proc->hal.hw, clk_src); isp_ll_set_clock_div(proc->hal.hw, &clk_div); } + isp_hal_init(&proc->hal, proc->proc_id); + atomic_init(&proc->isp_fsm, ISP_FSM_INIT); atomic_init(&proc->bf_fsm, ISP_FSM_INIT); atomic_init(&proc->blc_fsm, ISP_FSM_INIT);