Move the support for CS35L41 external boost to its shared library for ASoC use. This move resulted in cs35l41_hda_reg_sequence being removed, and its steps were broken down into regmap writes or functions from the library. And hardware configuration struct was unified for its use in the shared lib. While at it, some minor bugs were found and fixed it. v7 changelog: - Rebased on top v5.18-rc2 tag - Acks from Mark Brown v6 changelog: - Rebased on top of Linux Next with community patches for CS35L41 - Document patch acked by Charles Keepax v5 changelog: - Fixed wrong indentation at Documentation patch - Use of consistent prefix v4 changelog: - Separated GPIO 1 and 2 function enums v3 changelog: - Remove patches already accepted - Improved logic in documentation patch - Documentation patch goes before its code - Fixed missing Signed-off-by - Fixed subject for HDA patches v2 changelog: - Instead of removing the log, playback actions will log the last regmap access. - Documentation patch with the correct subject line and fixed bug reported by Rob Herring on the provided example. Previous versions: v1: https://lkml.org/lkml/2022/3/3/759 v2: https://lkml.org/lkml/2022/3/4/743 v3: https://lkml.org/lkml/2022/3/8/975 v4: https://lkml.org/lkml/2022/3/17/267 v5: https://lkml.org/lkml/2022/3/22/696 v6: https://lkml.org/lkml/2022/4/9/114 David Rhodes (1): ASoC: cs35l41: Document CS35l41 External Boost Lucas Tanure (15): ALSA: cs35l41: Unify hardware configuration ALSA: cs35l41: Check hw_config before using it ALSA: cs35l41: Move cs35l41_gpio_config to shared lib ALSA: hda: cs35l41: Fix I2S params comments ALSA: hda: cs35l41: Always configure the DAI ALSA: hda: cs35l41: Add Boost type flag ALSA: hda: cs35l41: Put the device into safe mode for external boost ALSA: hda: cs35l41: Mute the device before shutdown ALSA: cs35l41: Enable Internal Boost in shared lib ALSA: hda: cs35l41: Move boost config to initialization code ALSA: hda: cs35l41: Remove cs35l41_hda_reg_sequence struct ALSA: hda: cs35l41: Reorganize log for playback actions ALSA: hda: cs35l41: Handle all external boost setups the same way ALSA: hda: cs35l41: Move external boost handling to lib for ASoC use ASoC: cs35l41: Support external boost .../bindings/sound/cirrus,cs35l41.yaml | 44 ++- include/sound/cs35l41.h | 59 +++- sound/pci/hda/cs35l41_hda.c | 295 ++++++------------ sound/pci/hda/cs35l41_hda.h | 27 +- sound/soc/codecs/cs35l41-i2c.c | 4 +- sound/soc/codecs/cs35l41-lib.c | 190 ++++++++++- sound/soc/codecs/cs35l41-spi.c | 4 +- sound/soc/codecs/cs35l41.c | 166 +++++----- sound/soc/codecs/cs35l41.h | 5 +- 9 files changed, 443 insertions(+), 351 deletions(-) -- 2.35.2