mbox series

[v2,00/14] ASoC: Intel: avs: Machine boards and HDA codec support

Message ID 20220511162403.3987658-1-cezary.rojewski@intel.com (mailing list archive)
Headers show
Series ASoC: Intel: avs: Machine boards and HDA codec support | expand

Message

Cezary Rojewski May 11, 2022, 4:23 p.m. UTC
This series focuses on populating boards/ subdirectory with supported
configurations by the avs-driver. Note: it is independent of recently
provided "Driver code and PCM operations" series [1], that is, code
found here should not collide with it.

Series starts with a small change that adds a helper to sound pcm
header, allowing for retrieving string naming a direction without the
need of substream pointer. Said helper is used by codec driver code that
follows it but I believe it's generic and helpful enough that it can be
called an independent addition to the sound core.

Code for generic HD-Audio codec driver follows. It is a ASoC wrapper for
existing HD-Audio codec code found in sound/pci/hda/. There is basically
no custom logic involved up to the point that driver follows
HDA_DEV_LEGACY convention, rather than the HDA_DEV_ASOC one. Commit
message for the given patch iterates on this and explains crucial parts
of the implementation.

From there on is a range of boards appended. All of them follow the same
scheme:

- define avs_create_dai_link() so DAI-LINKs can be created dynamically,
  based on the link_mask (I2S) or the number of entries in the
  ->pcm_list_head list (HDA)
- define avs_create_dapm_routes() so DAPM routes can be created
  dynamically, same rules as above apply
- define probe() function that creates new ASoC card, assign all
  required operations and resources along with calling the two above


Changes in v2:
- 'link_mask' usage replaced with 'i2s_link_mask' as requested by
  Pierre
- 'ssp_test' board renamed to 'i2s_test' to match naming convention used
  for other i2s machine boards
- enriched commit message and Kconfig for the 'HD-Audio codec driver'
  patch as requested by Kai


[1]: https://lore.kernel.org/all/20220426172346.3508411-1-cezary.rojewski@intel.com/


Amadeusz Sławiński (1):
  ASoC: Intel: avs: Add max98373 machine board

Cezary Rojewski (13):
  ALSA: Add snd_pcm_direction_name() helper
  ASoC: codecs: Add HD-Audio codec driver
  ASoC: Intel: avs: Add HDAudio machine board
  ASoC: Intel: avs: Add DMIC machine board
  ASoC: Intel: avs: Add I2S-test machine board
  ASoC: Intel: avs: Add rt274 machine board
  ASoC: Intel: avs: Add rt286 machine board
  ASoC: Intel: avs: Add rt298 machine board
  ASoC: Intel: avs: Add rt5682 machine board
  ASoC: Intel: avs: Add nau8825 machine board
  ASoC: Intel: avs: Add ssm4567 machine board
  ASoC: Intel: avs: Add max98357a machine board
  ASoC: Intel: avs: Add da7219 machine board

 include/sound/pcm.h                    |  19 +-
 sound/soc/codecs/Kconfig               |  10 +
 sound/soc/codecs/Makefile              |   2 +
 sound/soc/codecs/hda-dai.c             | 102 +++++++
 sound/soc/codecs/hda.c                 | 395 +++++++++++++++++++++++++
 sound/soc/codecs/hda.h                 |  19 ++
 sound/soc/intel/Kconfig                |   3 +
 sound/soc/intel/avs/Makefile           |   3 +
 sound/soc/intel/avs/boards/Kconfig     | 121 ++++++++
 sound/soc/intel/avs/boards/Makefile    |  27 ++
 sound/soc/intel/avs/boards/da7219.c    | 282 ++++++++++++++++++
 sound/soc/intel/avs/boards/dmic.c      |  93 ++++++
 sound/soc/intel/avs/boards/hdaudio.c   | 294 ++++++++++++++++++
 sound/soc/intel/avs/boards/i2s_test.c  | 180 +++++++++++
 sound/soc/intel/avs/boards/max98357a.c | 154 ++++++++++
 sound/soc/intel/avs/boards/max98373.c  | 239 +++++++++++++++
 sound/soc/intel/avs/boards/nau8825.c   | 353 ++++++++++++++++++++++
 sound/soc/intel/avs/boards/rt274.c     | 310 +++++++++++++++++++
 sound/soc/intel/avs/boards/rt286.c     | 281 ++++++++++++++++++
 sound/soc/intel/avs/boards/rt298.c     | 281 ++++++++++++++++++
 sound/soc/intel/avs/boards/rt5682.c    | 340 +++++++++++++++++++++
 sound/soc/intel/avs/boards/ssm4567.c   | 271 +++++++++++++++++
 22 files changed, 3775 insertions(+), 4 deletions(-)
 create mode 100644 sound/soc/codecs/hda-dai.c
 create mode 100644 sound/soc/codecs/hda.c
 create mode 100644 sound/soc/codecs/hda.h
 create mode 100644 sound/soc/intel/avs/boards/Kconfig
 create mode 100644 sound/soc/intel/avs/boards/Makefile
 create mode 100644 sound/soc/intel/avs/boards/da7219.c
 create mode 100644 sound/soc/intel/avs/boards/dmic.c
 create mode 100644 sound/soc/intel/avs/boards/hdaudio.c
 create mode 100644 sound/soc/intel/avs/boards/i2s_test.c
 create mode 100644 sound/soc/intel/avs/boards/max98357a.c
 create mode 100644 sound/soc/intel/avs/boards/max98373.c
 create mode 100644 sound/soc/intel/avs/boards/nau8825.c
 create mode 100644 sound/soc/intel/avs/boards/rt274.c
 create mode 100644 sound/soc/intel/avs/boards/rt286.c
 create mode 100644 sound/soc/intel/avs/boards/rt298.c
 create mode 100644 sound/soc/intel/avs/boards/rt5682.c
 create mode 100644 sound/soc/intel/avs/boards/ssm4567.c

Comments

Cezary Rojewski May 26, 2022, 10:14 a.m. UTC | #1
On 2022-05-11 6:23 PM, Cezary Rojewski wrote:
> This series focuses on populating boards/ subdirectory with supported
> configurations by the avs-driver. Note: it is independent of recently
> provided "Driver code and PCM operations" series [1], that is, code
> found here should not collide with it.


Hello,

Friendly ping as PCM series got merged but this one looks orphaned :( 
Patches addressing fls() issues reported by bots have been sent as 
separate series [1].


[1]: 
https://lore.kernel.org/lkml/20220525144844.1571705-1-amadeuszx.slawinski@linux.intel.com/

Regards,
Czarek
Mark Brown May 26, 2022, 1:59 p.m. UTC | #2
On Thu, May 26, 2022 at 12:14:09PM +0200, Cezary Rojewski wrote:

> Friendly ping as PCM series got merged but this one looks orphaned :(
> Patches addressing fls() issues reported by bots have been sent as separate
> series [1].

Please don't send content free pings and please allow a reasonable time
for review.  People get busy, go on holiday, attend conferences and so 
on so unless there is some reason for urgency (like critical bug fixes)
please allow at least a couple of weeks for review.  If there have been
review comments then people may be waiting for those to be addressed.

Sending content free pings adds to the mail volume (if they are seen at
all) which is often the problem and since they can't be reviewed
directly if something has gone wrong you'll have to resend the patches
anyway, so sending again is generally a better approach though there are
some other maintainers who like them - if in doubt look at how patches
for the subsystem are normally handled.
Mark Brown June 7, 2022, 10:55 a.m. UTC | #3
On Wed, 11 May 2022 18:23:49 +0200, Cezary Rojewski wrote:
> This series focuses on populating boards/ subdirectory with supported
> configurations by the avs-driver. Note: it is independent of recently
> provided "Driver code and PCM operations" series [1], that is, code
> found here should not collide with it.
> 
> Series starts with a small change that adds a helper to sound pcm
> header, allowing for retrieving string naming a direction without the
> need of substream pointer. Said helper is used by codec driver code that
> follows it but I believe it's generic and helpful enough that it can be
> called an independent addition to the sound core.
> 
> [...]

Applied to

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

Thanks!

[01/14] ALSA: Add snd_pcm_direction_name() helper
        commit: 90b12a88b710cdc80c00552dfbd589228978bffe
[02/14] ASoC: codecs: Add HD-Audio codec driver
        commit: b5df2a7dca1cc6c66eee0005c92094855dc2028c
[03/14] ASoC: Intel: avs: Add HDAudio machine board
        commit: 97030a43371ea29d65f332d288eb73e8f7bdb3a9
[04/14] ASoC: Intel: avs: Add DMIC machine board
        commit: 6575e5cae7525b07d0b5fbd7d42323363919a867
[05/14] ASoC: Intel: avs: Add I2S-test machine board
        commit: e39acc4cfd9250e7b8ec01897570f3009659c3d6
[06/14] ASoC: Intel: avs: Add rt274 machine board
        commit: e2a4cbf277c4561d01f1aafa3cfafe46bf3feec7
[07/14] ASoC: Intel: avs: Add rt286 machine board
        commit: 1d395ee2e19b33a1008acfc7af186f2851b63d01
[08/14] ASoC: Intel: avs: Add rt298 machine board
        commit: 88429ab16df4cd4a1a77d45b90ec95cf62cc22d1
[09/14] ASoC: Intel: avs: Add rt5682 machine board
        commit: 748102786b3ce0bf402c2dc42386cbfaab71ac39
[10/14] ASoC: Intel: avs: Add nau8825 machine board
        commit: 32ee40b5590081a6b38a55e4ab16b47085f93afe
[11/14] ASoC: Intel: avs: Add ssm4567 machine board
        commit: 69ea14efe99b533652255b07a9736a9856f50ea5
[12/14] ASoC: Intel: avs: Add max98357a machine board
        commit: 282c8f8de72f95325225d94caef61f3cc96401da
[13/14] ASoC: Intel: avs: Add max98373 machine board
        commit: 223a0a945821b96f4ccd9940ee975499706e1794
[14/14] ASoC: Intel: avs: Add da7219 machine board
        commit: 6b5b0d6f36dd45e22f1710e8bcd97f28b4ba41f5

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