mbox series

[0/8] ASoC: Intel: avs: 16 channels support

Message ID 20250404090337.3564117-1-cezary.rojewski@intel.com (mailing list archive)
Headers show
Series ASoC: Intel: avs: 16 channels support | expand

Message

Cezary Rojewski April 4, 2025, 9:03 a.m. UTC
Relatively small delta-wise patchset which raises max channels supported
from 8 to 16.  The existing limitation is software-based, not hardware
based.  The hardware, as per HDAudio specification, section 1.2.2,
(relevant register at SDnFMT, section 3.3.41) supports the
configurations for years.  The avs-driver becomes the first consumer of
that configuration on the Linux kernel side.

Set starts off with update to string_helpers so that functionality added
with parse_int_array_user() can be utilized in kernel-kernel
interactions.

Follow up is rasing the cap on HDAudio-library side.  The format
selection procedure found in the library is good-to-go as is.

Everything that follows these two patches is avs-driver specific:
- raise channels_max for every DAI-driver template
- provide i2s_test module parameter for testing purposes.  When combined
  with I2S loopback card, allows to test 16ch on most Intel hardware post
  Broadwell era
- adjust TDM masks to reflect the 8 -> 16 channels change

Amadeusz Sławiński (5):
  ASoC: Intel: avs: Rename AVS_CHANNELS_MAX define
  ASoC: Intel: avs: Allow to specify custom configurations with i2s_test
  ASoC: Intel: avs: Assign unique ID to platform devices
  ASoC: Intel: avs: Iterate over correct number of TDMs
  ASoC: Intel: avs: Support 16 TDMs in dynamic assignment

Cezary Rojewski (3):
  lib/string_helpers: Introduce parse_int_array()
  ALSA: hda: Allow for 16 channels configuration
  ASoC: Intel: avs: Allow for 16 channels configuration

 include/linux/string_helpers.h        |   1 +
 lib/string_helpers.c                  |  39 +++----
 sound/hda/hdac_device.c               |   2 +-
 sound/soc/intel/avs/board_selection.c | 144 ++++++++++++++------------
 sound/soc/intel/avs/messages.h        |   5 +-
 sound/soc/intel/avs/path.c            |   2 +-
 sound/soc/intel/avs/pcm.c             |  10 +-
 sound/soc/intel/avs/topology.c        |   4 +-
 sound/soc/intel/avs/topology.h        |   2 +-
 9 files changed, 110 insertions(+), 99 deletions(-)

Comments

Mark Brown April 8, 2025, 12:49 p.m. UTC | #1
On Fri, 04 Apr 2025 11:03:29 +0200, Cezary Rojewski wrote:
> Relatively small delta-wise patchset which raises max channels supported
> from 8 to 16.  The existing limitation is software-based, not hardware
> based.  The hardware, as per HDAudio specification, section 1.2.2,
> (relevant register at SDnFMT, section 3.3.41) supports the
> configurations for years.  The avs-driver becomes the first consumer of
> that configuration on the Linux kernel side.
> 
> [...]

Applied to

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

Thanks!

[1/8] lib/string_helpers: Introduce parse_int_array()
      commit: 83b9ae77f06607d19f7d3dcc6008742051137b27
[2/8] ALSA: hda: Allow for 16 channels configuration
      commit: e6b9c7f5a32b3bde4e24ee74c0d4f954ce086272
[3/8] ASoC: Intel: avs: Rename AVS_CHANNELS_MAX define
      commit: 87bcb08710160bde5712ca0d24c505074b7dfafa
[4/8] ASoC: Intel: avs: Allow for 16 channels configuration
      commit: d360b713727db0093fe9a8cf475d1d536075c12f
[5/8] ASoC: Intel: avs: Allow to specify custom configurations with i2s_test
      commit: 7d859189de13f06fdc511761c745f3b302bed7b6
[6/8] ASoC: Intel: avs: Assign unique ID to platform devices
      commit: 79138dbff53ab0e9891ebdfce8d7b298c3783cd1
[7/8] ASoC: Intel: avs: Iterate over correct number of TDMs
      commit: 6a68cbe09e9a7dc9f53857510bee1bc34bdbbfd9
[8/8] ASoC: Intel: avs: Support 16 TDMs in dynamic assignment
      commit: 8d18e67abbdf380cd1cfd2c313aac625092d7777

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