ASoC: SOF: imx8: add core shutdown operation for imx8/imx8x
authorLaurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
Fri, 13 Jun 2025 19:43:10 +0000 (15:43 -0400)
committerMark Brown <broonie@kernel.org>
Mon, 16 Jun 2025 12:26:13 +0000 (13:26 +0100)
commitb081d8564e4a396843a78788476fdcbf70efed06
treeb11baa4d8e26d91470c5f2f811bb907c1ac3fa98
parent13b86ea92ebf0fa587fbadfb8a60ca2e9993203f
ASoC: SOF: imx8: add core shutdown operation for imx8/imx8x

Currently, the DSP core from i.MX8QM/i.MX8QXP is able to operate while the
firmware image is being loaded. Because of this, the DSP may change the
content of the firmware data just after it was loaded, thus leading to the
data having unexpected values when the DSP is reset (via run()).

Fix this by implementing the core_shutdown() operation that will put the
DSP in stall during suspend(). The stall will be removed during the run()
opertion, thus guaranteeing that the DSP core will not be able to run
while the firmware image is being loaded.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
Reviewed-by: Daniel Baluta <daniel.baluta@nxp.com>
Link: https://patch.msgid.link/20250613194310.1128733-1-laurentiumihalcea111@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sof/imx/imx8.c