mirror of
https://github.com/torvalds/linux.git
synced 2026-06-05 13:06:59 +02:00
ASoC: codecs: wm_adsp: Allow wm_adsp to hibernate without stopping DSP
Some parts do not stop the DSP core before runtime suspend, however, this leaves the DSP controls enabled and accessible whilst the part is suspended and the regmap is cache_only. Add new APIs to allow for the DSP to hibernate when the part is suspended, and the DSP is not shut down. Signed-off-by: Stefan Binding <sbinding@opensource.cirrus.com> Reviewed-by: Richard Fitzgerald <rf@opensource.cirrus.com> Link: https://patch.msgid.link/20260224161821.93365-3-sbinding@opensource.cirrus.com Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
73942a6ea2
commit
6394a52c90
|
|
@ -1100,6 +1100,12 @@ void wm_adsp_stop(struct wm_adsp *dsp)
|
|||
}
|
||||
EXPORT_SYMBOL_GPL(wm_adsp_stop);
|
||||
|
||||
void wm_adsp_hibernate(struct wm_adsp *dsp, bool hibernate)
|
||||
{
|
||||
cs_dsp_hibernate(&dsp->cs_dsp, hibernate);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(wm_adsp_hibernate);
|
||||
|
||||
int wm_adsp_event(struct snd_soc_dapm_widget *w,
|
||||
struct snd_kcontrol *kcontrol, int event)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -103,6 +103,7 @@ irqreturn_t wm_halo_wdt_expire(int irq, void *data);
|
|||
|
||||
int wm_adsp_run(struct wm_adsp *dsp);
|
||||
void wm_adsp_stop(struct wm_adsp *dsp);
|
||||
void wm_adsp_hibernate(struct wm_adsp *dsp, bool hibernate);
|
||||
int wm_adsp_event(struct snd_soc_dapm_widget *w,
|
||||
struct snd_kcontrol *kcontrol, int event);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user