mbox series

[0/2] ASoC: compress: Support module_get on stream open

Message ID 20210901095255.3617-1-peter.ujfalusi@linux.intel.com (mailing list archive)
Headers show
Series ASoC: compress: Support module_get on stream open | expand

Message

Peter Ujfalusi Sept. 1, 2021, 9:52 a.m. UTC
Hi,

SOF is marking all componet drivers with module_get_upon_open = 1 which works
fine with normal PCM streams, however on compressed side the module get upon
open is not supported. The module_get works when module_get_upon_open is not set
becasue the snd_soc_component_module_get_when_probe() will pass NULL for the
substream parameter of snd_soc_component_module_get().

In order to re-use the existing infrastructure for module_get, the proposal is
to convert the mark_module to void pointer (like the pm mark) and implement
matching code for the compressed open/free to pcm open/close.

Regards,
Peter
---
Peter Ujfalusi (2):
  ASoC: soc-component: Convert the mark_module to void*
  ASoC: compress/component: Use module_get_when_open/put_when_close for
    cstream

 include/sound/soc-component.h | 14 ++++----
 sound/soc/soc-component.c     | 61 +++++++++++++++--------------------
 sound/soc/soc-compress.c      | 43 +++++++++++++++++++++---
 3 files changed, 71 insertions(+), 47 deletions(-)

Comments

Mark Brown Sept. 20, 2021, 3:30 p.m. UTC | #1
On Wed, 1 Sep 2021 12:52:53 +0300, Peter Ujfalusi wrote:
> SOF is marking all componet drivers with module_get_upon_open = 1 which works
> fine with normal PCM streams, however on compressed side the module get upon
> open is not supported. The module_get works when module_get_upon_open is not set
> becasue the snd_soc_component_module_get_when_probe() will pass NULL for the
> substream parameter of snd_soc_component_module_get().
> 
> In order to re-use the existing infrastructure for module_get, the proposal is
> to convert the mark_module to void pointer (like the pm mark) and implement
> matching code for the compressed open/free to pcm open/close.
> 
> [...]

Applied to

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

Thanks!

[1/2] ASoC: soc-component: Convert the mark_module to void*
      commit: a739fdc26211952edb34bf1ac9ed7afe220a5d54
[2/2] ASoC: compress/component: Use module_get_when_open/put_when_close for cstream
      commit: cd46f3824480740879d2c15d65c6e6b038f96021

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