ASoC: Intel: Skylake: Fix module state after unbind and delete
When DSP module is unbound, the module state needs to be in INIT_DONE state instead of UNINT. Also the state needs to be set to UNINIT after module is deleted from DSP pipeline. So, set the module state to INIT_DONE after unbind and then UNINIT after module is deleted. Signed-off-by: Jeeja KP <jeeja.kp@intel.com> Acked-by: Vinod Koul <vinod.koul@intel.com> Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
Родитель
fdd85a054b
Коммит
473a4d516c
|
@ -862,7 +862,7 @@ static void skl_clear_module_state(struct skl_module_pin *mpin, int max,
|
|||
}
|
||||
|
||||
if (!found)
|
||||
mcfg->m_state = SKL_MODULE_UNINIT;
|
||||
mcfg->m_state = SKL_MODULE_INIT_DONE;
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
@ -1037,6 +1037,11 @@ static int skl_tplg_mixer_dapm_post_pmd_event(struct snd_soc_dapm_widget *w,
|
|||
|
||||
skl_delete_pipe(ctx, mconfig->pipe);
|
||||
|
||||
list_for_each_entry(w_module, &s_pipe->w_list, node) {
|
||||
src_module = w_module->w->priv;
|
||||
src_module->m_state = SKL_MODULE_UNINIT;
|
||||
}
|
||||
|
||||
return skl_tplg_unload_pipe_modules(ctx, s_pipe);
|
||||
}
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче