ALSA: hda/ca0132 - Check if dspload_image succeeded.
If dspload_image() fails, it was ignored and dspload_wait_loaded() was still called. dsp_loaded should never be set to true in this case, skip it. The check in dspload_wait_loaded() return true if the DSP is loaded or if it never started. Signed-off-by: Dylan Reid <dgreid@chromium.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
303985f810
commit
d1d28500cc
|
@ -4351,12 +4351,16 @@ static bool ca0132_download_dsp_images(struct hda_codec *codec)
|
|||
return false;
|
||||
|
||||
dsp_os_image = (struct dsp_image_seg *)(fw_entry->data);
|
||||
dspload_image(codec, dsp_os_image, 0, 0, true, 0);
|
||||
if (dspload_image(codec, dsp_os_image, 0, 0, true, 0)) {
|
||||
pr_err("ca0132 dspload_image failed.\n");
|
||||
goto exit_download;
|
||||
}
|
||||
|
||||
dsp_loaded = dspload_wait_loaded(codec);
|
||||
|
||||
exit_download:
|
||||
release_firmware(fw_entry);
|
||||
|
||||
|
||||
return dsp_loaded;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue