reset: imx8mp-audiomix: Add support for DSP run/stall

We can Run/Stall the DSP via audio block control bits found in audiomix.
Implement this functionality using the reset controller and use assert
for Stall and deassert for Run.

Reviewed-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Frank Li <Frank.Li@nxp.com>
Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Link: https://lore.kernel.org/r/20250311085812.1296243-8-daniel.baluta@nxp.com
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
This commit is contained in:
Daniel Baluta 2025-03-11 10:58:10 +02:00 committed by Mathieu Poirier
parent 9fba66374d
commit c133ec126a
1 changed files with 8 additions and 0 deletions

View File

@ -17,6 +17,9 @@
#define IMX8MP_AUDIOMIX_EARC_RESET_MASK BIT(1)
#define IMX8MP_AUDIOMIX_EARC_PHY_RESET_MASK BIT(2)
#define IMX8MP_AUDIOMIX_DSP_RUNSTALL_OFFSET 0x108
#define IMX8MP_AUDIOMIX_DSP_RUNSTALL_MASK BIT(5)
struct imx8mp_reset_map {
unsigned int offset;
unsigned int mask;
@ -34,6 +37,11 @@ static const struct imx8mp_reset_map reset_map[] = {
.mask = IMX8MP_AUDIOMIX_EARC_PHY_RESET_MASK,
.active_low = true,
},
[IMX8MP_AUDIOMIX_DSP_RUNSTALL] = {
.offset = IMX8MP_AUDIOMIX_DSP_RUNSTALL_OFFSET,
.mask = IMX8MP_AUDIOMIX_DSP_RUNSTALL_MASK,
.active_low = false,
},
};
struct imx8mp_audiomix_reset {