]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
ASoC: max98090: Fix restore of DAPM Muxes
authorJon Hunter <jonathanh@nvidia.com>
Wed, 1 May 2019 14:29:38 +0000 (15:29 +0100)
committerBen Hutchings <ben@decadent.org.uk>
Mon, 23 Sep 2019 20:11:59 +0000 (21:11 +0100)
commit21df0879fe7b4ea3eab3e149edb85fef83862dcb
tree81901eb19d98d976a5ceaa19911d5f60e07673c9
parentc322ba7cd39bd986476e35edc8adc05512d9e6f1
ASoC: max98090: Fix restore of DAPM Muxes

commit ecb2795c08bc825ebd604997e5be440b060c5b18 upstream.

The max98090 driver defines 3 DAPM muxes; one for the right line output
(LINMOD Mux), one for the left headphone mixer source (MIXHPLSEL Mux)
and one for the right headphone mixer source (MIXHPRSEL Mux). The same
bit is used for the mux as well as the DAPM enable, and although the mux
can be correctly configured, after playback has completed, the mux will
be reset during the disable phase. This is preventing the state of these
muxes from being saved and restored correctly on system reboot. Fix this
by marking these muxes as SND_SOC_NOPM.

Note this has been verified this on the Tegra124 Nyan Big which features
the MAX98090 codec.

Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
sound/soc/codecs/max98090.c