[alsa-devel] [PATCH v3 00/10] adapt SOF to use snd-hda-codec-hdmi

Kai Vehmanen kai.vehmanen at linux.intel.com
Tue Sep 10 20:29:06 CEST 2019


Hi all,

here's the third round for this series that adapts SOF to use
snd-hda-codec-hdmi (patch_hdmi.c) codec driver instead of hdac_hdmi
(soc/codecs/hdac_hdmi.c). The primary goal is to unify the HDMI codec
implementation between DSP and non-DSP HDA configurations, offer same
interface to user-space and reduce maintenance load for all.

This is now first series without the RFC tag. The series has
all machine drivers converted that are directly impacted.

v3 changes:
- Merged two mst_no_extra_pcms patches (Takashi's feedback).
- Use mach_params instead of module name lookups to
  determine which codec driver is used at runtime (Pierre's feedback).
- Extended machine driver support to four more drivers. This
  includes now all machine drivers which are used with SOF and
  which support HDMI audio. With this patchset, the machine
  drivers continue to work with both SOF and SST DSP drivers,
  and can be configured to use hdac-hdmi also with SOF (via
  kernel module parameter -> this is for distros to provide
  backwards compatibility for UCM files).
- Various smaller cleanups across the patchset.

Feature and testing info:

 - Tested on multiple Intel platforms supported by SOF.
 - Tested with ALSA console tools as well as with Pulseaudio.
      - requires Pulseaudio 12.x or newer, see
        https://lists.freedesktop.org/archives/pulseaudio-discuss/2019-August/031358.html
 - HDMI, DP, DP-MST with multi-monitor use-scenarios work ok.
 - New feature for SOF: ELD /proc fs works just like in
   DSP-less mode.
 - New feature for SOF: jack detection works out-of-the-box
   with Pulseaudio (no need for card specific UCM for HDMI)

Kai Vehmanen (10):
  ALSA: hda/hdmi - implement mst_no_extra_pcms flag
  ALSA: hda/hdmi - allow control creation without a linked pcm
  ASoC: hdac_hda: add support for HDMI/DP as a HDA codec
  ASoC: SOF: Intel: add support for snd-hda-codec-hdmi
  ASoC: Intel: skl-hda-dsp-generic: use snd-hda-codec-hdmi
  ASoC: Intel: skl-hda-dsp-generic: fix include guard name
  ASoC: Intel: bxt-da7219-max98357a: common hdmi codec support
  ASoC: Intel: glk_rt5682_max98357a: common hdmi codec support
  ASoC: intel: sof_rt5682: common hdmi codec support
  ASoC: Intel: bxt_rt298: common hdmi codec support

 include/sound/hda_codec.h                     |  1 +
 include/sound/soc-acpi.h                      |  2 +
 sound/pci/hda/patch_hdmi.c                    | 23 +++--
 sound/soc/codecs/hdac_hda.c                   | 95 ++++++++++++++++---
 sound/soc/codecs/hdac_hda.h                   | 12 ++-
 sound/soc/intel/boards/bxt_da7219_max98357a.c | 11 +++
 sound/soc/intel/boards/bxt_rt298.c            | 11 +++
 sound/soc/intel/boards/glk_rt5682_max98357a.c | 11 +++
 sound/soc/intel/boards/hda_dsp_common.h       | 87 +++++++++++++++++
 sound/soc/intel/boards/skl_hda_dsp_common.c   | 10 +-
 sound/soc/intel/boards/skl_hda_dsp_common.h   | 27 +++++-
 sound/soc/intel/boards/skl_hda_dsp_generic.c  |  1 +
 sound/soc/intel/boards/sof_rt5682.c           | 11 +++
 sound/soc/sof/intel/Kconfig                   | 10 ++
 sound/soc/sof/intel/hda-codec.c               | 19 +++-
 sound/soc/sof/intel/hda.c                     |  6 ++
 sound/soc/sof/intel/hda.h                     |  6 +-
 17 files changed, 315 insertions(+), 28 deletions(-)
 create mode 100644 sound/soc/intel/boards/hda_dsp_common.h

-- 
2.17.1



More information about the Alsa-devel mailing list