This series improves the handling of clock and reset controls of NVIDA Tegra ALSA drivers. Tegra HDA and AHUB drivers aren't handling resets properly, which needs to be fixed in order to unblock other patches related to fixes of the reset controller driver since HDA/AHUB are bound to fail once reset controller driver will be corrected. In particular ALSA drivers are relying on implicit de-assertion of resets which is done by the tegra-clk driver. It's not the business of the clk driver to touch resets and we need to fix this because it breaks reset/clk programming sequences of other Tegra drivers.
Changelog: v3: - Reworked "hda/tegra: Reset hardware" and "ahub: Reset hardware properly" patches, they now use usleep + reset_deassert() instead of reset_reset(). Suggested by Thierry Reding. - Added new patch "hda/tegra: Remove unnecessary null-check from hda_tegra_runtime_resume()". Suggested by Thierry Reding. - Replaced "ahub: Reset hardware properly" patch with "ahub: Add missing resets". Suggested by Thierry Reding. - Slightly improved commit messages. - Added acks from Thierry Reding. v2: - Added regcache_sync() to the "ahub: Reset hardware properly" patch, which was missed by accident in v1. - Corrected typo in the format of the error message in "ahub: Use of_reset_control_array_get_exclusive()" patch by s/%p/%pe/. Dmitry Osipenko (6): ALSA: hda/tegra: Use clk_bulk helpers ALSA: hda/tegra: Reset hardware ALSA: hda/tegra: Remove unnecessary null-check from hda_tegra_runtime_resume() ASoC: tegra: ahub: Add missing resets ASoC: tegra: ahub: Use clk_bulk helpers ASoC: tegra: ahub: Reset hardware properly sound/pci/hda/hda_tegra.c | 90 ++++++++++++---------------------- sound/soc/tegra/tegra30_ahub.c | 64 ++++++++++++++---------- sound/soc/tegra/tegra30_ahub.h | 5 +- 3 files changed, 72 insertions(+), 87 deletions(-) -- 2.29.2