mbox series

[v2,00/20] Support external boost at CS35l41 ASoC driver

Message ID 20220304150721.3802-1-tanureal@opensource.cirrus.com (mailing list archive)
Headers show
Series Support external boost at CS35l41 ASoC driver | expand

Message

Lucas Tanure March 4, 2022, 3:07 p.m. UTC
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.

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

David Rhodes (2):
  ASoC: cs35l41: Fix GPIO2 configuration
  ASoC: cs35l41: Document CS35l41 External Boost

Lucas Tanure (18):
  ASoC: cs35l41: Fix max number of TX channels
  ASoC: cs35l41: Fix DSP mbox start command and global enable order
  ASoC: cs35l41: Remove unnecessary param
  sound: cs35l41: Unify hardware configuration
  sound: cs35l41: Check hw_config before using it
  sound: cs35l41: Move cs35l41_gpio_config to shared lib
  hda: cs35l41: Fix I2S params comments
  hda: cs35l41: Always configure the DAI
  hda: cs35l41: Add Boost type flag
  hda: cs35l41: Put the device into safe mode for external boost
  hda: cs35l41: Mute the device before shutdown
  sound: cs35l41: Enable Internal Boost in shared lib
  hda: cs35l41: Move boost config to initialization code
  hda: cs35l41: Remove cs35l41_hda_reg_sequence struct
  hda: cs35l41: Reorganize log for playback actions
  hda: cs35l41: Handle all external boost setups the same way
  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                       |  53 +++-
 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                    | 174 +++++------
 sound/soc/codecs/cs35l41.h                    |   5 +-
 9 files changed, 440 insertions(+), 356 deletions(-)

Comments

Takashi Iwai March 4, 2022, 5:05 p.m. UTC | #1
On Fri, 04 Mar 2022 16:07:01 +0100,
Lucas Tanure wrote:
> 
> 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.
> 
> 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
> 
> David Rhodes (2):
>   ASoC: cs35l41: Fix GPIO2 configuration
>   ASoC: cs35l41: Document CS35l41 External Boost
> 
> Lucas Tanure (18):
>   ASoC: cs35l41: Fix max number of TX channels
>   ASoC: cs35l41: Fix DSP mbox start command and global enable order
>   ASoC: cs35l41: Remove unnecessary param
>   sound: cs35l41: Unify hardware configuration
>   sound: cs35l41: Check hw_config before using it
>   sound: cs35l41: Move cs35l41_gpio_config to shared lib
>   hda: cs35l41: Fix I2S params comments
>   hda: cs35l41: Always configure the DAI
>   hda: cs35l41: Add Boost type flag
>   hda: cs35l41: Put the device into safe mode for external boost
>   hda: cs35l41: Mute the device before shutdown
>   sound: cs35l41: Enable Internal Boost in shared lib
>   hda: cs35l41: Move boost config to initialization code
>   hda: cs35l41: Remove cs35l41_hda_reg_sequence struct
>   hda: cs35l41: Reorganize log for playback actions
>   hda: cs35l41: Handle all external boost setups the same way
>   hda: cs35l41: Move external boost handling to lib for ASoC use
>   ASoC: cs35l41: Support external boost

Through a quick glance, the code changes look OK in general.
But please correct the subject prefix.  For non-ASoC patches (that
begin with either "hda" or "sound" in this patch set) should be with
"ALSA: hda: xxx" or such.

Also, although I respect the spirit of Haiku, the patch logs could be
a bit more verbose and descriptive, and the texts can be folded at the
right column.  Some patch descriptions are too short, e.g. patch 15
doesn't mention about the new usleep_range() addition in the code.


thanks,

Takashi
Mark Brown March 7, 2022, 8:38 p.m. UTC | #2
On Fri, 4 Mar 2022 15:07:01 +0000, Lucas Tanure wrote:
> 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.
> 
> [...]

Applied to

   https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-linus

Thanks!

[02/20] ASoC: cs35l41: Fix max number of TX channels
        commit: 16639d39bdf577168d3fe34315917a94365c8d19
[03/20] ASoC: cs35l41: Fix DSP mbox start command and global enable order
        commit: 5e02fb590e83684f63217f93a9cdeabd6a925f9c
[04/20] ASoC: cs35l41: Remove unnecessary param
        (no commit info)

All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.

You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.

If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.

Please add any relevant lists and maintainers to the CCs when replying
to this mail.

Thanks,
Mark