]> git.baikalelectronics.ru Git - kernel.git/commit
ASoC: tegra30: i2s: Restore hardware state on runtime PM resume
authorDmitry Osipenko <digetx@gmail.com>
Sun, 14 Mar 2021 15:44:45 +0000 (18:44 +0300)
committerMark Brown <broonie@kernel.org>
Thu, 18 Mar 2021 13:49:32 +0000 (13:49 +0000)
commite5145575f014cb4c3db080323d1109806bafc4df
treeaf818020b65351342068aa1b2158320870ac93ff
parentda690e01535d9a3dd56220ad768828ab7ede2a5d
ASoC: tegra30: i2s: Restore hardware state on runtime PM resume

Tegra30 I2S driver syncs regmap cache only on resume from system suspend,
but hardware is reset across the runtime suspend because RPM of the parent
AHUB driver resets the I2S hardware, hence h/w state is lost after each
RPM resume. The problem isn't visible because hardware happens to be fully
reprogrammed after each RPM resume. Move hardware syncing to RPM resume in
order to restore h/w state properly.

Fixes: 2c80befb7ef8 ("ASoC: tegra: ahub: Reset hardware properly")
Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
Link: https://lore.kernel.org/r/20210314154459.15375-4-digetx@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/tegra/tegra30_i2s.c