diff options
author | Dave Airlie <airlied@redhat.com> | 2024-04-22 14:35:22 +1000 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2024-04-22 14:35:52 +1000 |
commit | 0208ca55aa9c9b997da1f5bc45c4e98916323f08 (patch) | |
tree | e3130b2116f7738ac7cd79ad71698f545bb7db69 /sound/soc/sof/core.c | |
parent | 2871ec40994912ce4f2e2d5072a428eb84c77d3c (diff) | |
parent | ed30a4a51bb196781c8058073ea720133a65596f (diff) |
Backmerge tag 'v6.9-rc5' into drm-next
Linux 6.9-rc5
I've had a persistent msm failure on clang, and the fix is in fixes
so just pull it back to fix that.
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'sound/soc/sof/core.c')
-rw-r--r-- | sound/soc/sof/core.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/sound/soc/sof/core.c b/sound/soc/sof/core.c index 9b00ede2a486..cc84d4c81be9 100644 --- a/sound/soc/sof/core.c +++ b/sound/soc/sof/core.c @@ -339,8 +339,7 @@ static int sof_init_environment(struct snd_sof_dev *sdev) ret = snd_sof_probe(sdev); if (ret < 0) { dev_err(sdev->dev, "failed to probe DSP %d\n", ret); - sof_ops_free(sdev); - return ret; + goto err_sof_probe; } /* check machine info */ @@ -358,15 +357,18 @@ static int sof_init_environment(struct snd_sof_dev *sdev) ret = validate_sof_ops(sdev); if (ret < 0) { snd_sof_remove(sdev); + snd_sof_remove_late(sdev); return ret; } } + return 0; + err_machine_check: - if (ret) { - snd_sof_remove(sdev); - sof_ops_free(sdev); - } + snd_sof_remove(sdev); +err_sof_probe: + snd_sof_remove_late(sdev); + sof_ops_free(sdev); return ret; } |