[PATCH v3 0/6] Clock and reset improvements for Tegra ALSA drivers

Dmitry Osipenko
2021-01-20T00:33:34Z

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