[SRU][OEM-Disco][PULL] sound:asoc:sof add sof driver to support dmic connected to PCH

Hui Wang hui.wang at canonical.com
Thu May 2 01:00:13 UTC 2019


BugLink: https://bugs.launchpad.net/bugs/1826181

To support digital mic which is directly connected to PCH, Intel recommend Dell
and us to use sound:asoc:sof driver. This driver is under upstreaming, so far,
only part of the driver is merged to ASoC's tree.

Dell already have a couple of laptop models which connect the dmic to PCH, and
Dell pushed Intel to prepare a workable sof driver under v5.0 branch, and
pused us to integrate this driver, then the dmic can work on those laptop
models. (Lenovo also have 2 laptops which has this dmic design)

According to Intel's estimation, the whole sof driver can't be upstreamed in a
short of period. So Intel provided a branch which contains some upstreamed
patches and some not-yet patches.

Intel tested the provided branch, and looks the testing result is good.
PLease access https://people.canonical.com/~hwang4/sof-doc/ to get the testing
result.

I also made a simple test after oem-d merged those patches, I didn't find
big issues too.

There are some patches which touched the common code or the code of other
subsystems. Intel said it is safe, and I also looked at those patches, I also
think it is safe. But because there are too many changes, let us put this driver
into the OEM-D kernel, this driver will not merge to generic kernel.

[Impact]
Our OEM project need to enable a couple of laptops which connect the dmic
directly to the PCH, there is no driver for this design in the linux kernel,
so we need to integrate Intel's sof driver.


[Fix]
Intel provided a sof driver tree based on v5.0, it is for oem-d kernel

[Test Case]
Intel tested the audio functions, the testing result is good.
https://people.canonical.com/~hwang4/sof-doc/Beta%20Test%20Report%20-%20Dell%20Mantis%20(CML)%20%20-%20Apr%2030.pdf

I also made a simple test, speaker, headphone, dmic and headset-mic
worked.

[Regression Risk]
Low. So far both Intel side and I have not found any regression introduced by this
patchset, and to lower the risk, we only integrate the driver to oem-d kernel,
and after the image is ready, the oem project will perform the full-range test.

The following changes since commit 4d567449f646a68d0e9833e862c8b060286ce690:

  ASoC: dmic: declare trigger function as static (2019-05-02 07:44:13 +0800)

are available in the Git repository at:

  git at github.com:jason77-wang/oem.git oem-next

for you to fetch changes up to 63648a2f22ff033fef30c476f0711cae7a4cc014:

  UBUNTU: SAUCE: [Config-oem] Enable SOC_SOF configs (2019-05-02 07:44:22 +0800)

----------------------------------------------------------------
Amadeusz Sławiński (3):
      ASoC: topology: Reduce number of dereferences when accessing dobj
      ASoC: topology: Remove widgets from dobj list
      ASoC: topology: Fix memory leak from soc_tplg_denum_create_texts

Andy Shevchenko (1):
      ACPI / utils: Introduce acpi_dev_get_first_match_dev() helper

Bard liao (7):
      ASoC: topology: fix memory leak in soc_tplg_dapm_widget_create
      ASoC: topology: unload physical dai link in remove
      ASoC: topology: create tlv before soc_tplg_init_kcontrol
      ASoC: topology: free stream_name of dai_drv
      ASoC: topology: free link string in error
      UBUNTU: SAUCE: ALSA: hda: fix unregister device twice on ASoC driver
      UBUNTU: SAUCE: ASoC: hdac_hda: overwrite hdev type to HDA_DEV_ASOC

Charles Keepax (4):
      ASoC: dapm: Only power up active channels from a DAI
      ASoC: dapm: Check for NULL widget in dapm_update_dai_unlocked
      ASoC: compress: Clarify the intent of current compressed ops handling
      ASoC: compress: Add helper functions for component trigger/set_params

Curtis Malainey (1):
      ASoC: soc-core: clear platform pointers on error

Dan Carpenter (1):
      ASoC: dapm: Potential small memory leak in dapm_cnew_widget()

Daniel Vetter (3):
      component: Add documentation
      components: multiple components for a device
      i915/snd_hdac: I915 subcomponent for the snd_hdac

Guennadi Liakhovetski (3):
      ASoC: regulator notifier registration should be managed
      ALSA: pcm: remove a superfluous function declaration
      ASoC: SOF: Intel: Add legacy IPC support

Guenter Roeck (1):
      ASoC: intel: Fix crash at suspend/resume after failed codec registration

Hui Wang (2):
      UBUNTU: [Config] Enable SOC_SOF configs
      UBUNTU: SAUCE: [Config-oem] Enable SOC_SOF configs

Jerome Brunet (1):
      ASoC: dpcm: skip missing substream while applying symmetry

Jonathan Hunter (1):
      ASoC: soc-core: Fix probe deferral following prelink failure

KaiChieh Chuang (1):
      ASoC: dpcm: prevent snd_soc_dpcm use after free

Kailang Yang (1):
      ALSA: hda/realtek - Add new Dell platform for headset mode

Keyon Jie (8):
      ALSA: hda: Fix a mask wrong issue in snd_hdac_stream_start()
      ALSA: hda: Fix mismatches for register mask and value in hdac controller
      ASoC: SOF: Intel: Add hda-bus support and initialization
      ASoC: SOF: Intel: add SKL+ platform DAIs
      UBUNTU: SAUCE: ASoC: SOF: cnl: add pointer ops to use DPIB position
      UBUNTU: SAUCE: ASoC: SOF: Intel: hda-ipc: remove irq_status from sdev and fix missing handling to IPC IRQ in the thread
      UBUNTU: SAUCE: ASoC: SOF: Intel: hda-stream: store stream capabilities
      UBUNTU: SAUCE: ASoC: SOF: Intel: hda-stream: handle real stream interrupts only

Kuninori Morimoto (7):
      ASoC: soc-core: add .num_platform for dai_link
      ASoC: soc-core: add new snd_soc_flush_all_delayed_work()
      ASoC: soc-core: merge card resources cleanup method
      ASoC: soc-core: reduce if/else nest on soc_probe_link_dais
      ASoC: soc-core: add soc_cleanup_component()
      ASoC: soc-core: use for_each_link_codecs() for dai_link codecs
      ASoC: soc-core: use for_each_link_codecs() for dai_link codecs V2

Liam Girdwood (29):
      ASoC: topology: Align tplg pointer increment across all kcontrols
      ASoC: SOF: Add Sound Open Firmware driver core
      ASoC: SOF: Add Sound Open Firmware KControl support
      ASoC: SOF: Add driver debug support.
      ASoC: SOF: Add support for IPC IO between DSP and Host
      ASoC: SOF: Add PCM operations support
      ASoC: SOF: Add support for loading topologies
      ASoC: SOF: Add DSP firmware logger support
      ASoC: SOF: Add DSP HW abstraction operations
      ASoC: SOF: Add firmware loader support
      ASoC: SOF: Add userspace ABI support
      ASoC: SOF: Add PM support
      ASoC: SOF: Add Nocodec machine driver support
      ASoC: SOF: Intel: Add BYT, CHT and BSW DSP HW support.
      ASoC: SOF: Intel: Add BDW HW DSP support
      ASoC: SOF: Intel: Add APL/CNL HW DSP support
      ASoC: SOF: Intel: Add HDA controller for Intel DSP
      ASoC: SOF: Intel: Add Intel specific HDA DSP HW operations
      ASoC: SOF: Intel: Add Intel specific HDA IPC mechanisms.
      ASoC: SOF: Intel: Add Intel specific HDA firmware loader
      ASoC: SOF: Intel: Add Intel specific HDA PCM operations
      ASoC: SOF: Intel: Add Intel specific HDA stream operations
      ASoC: SOF: Intel: Add Intel specific HDA trace operations
      ASoC: SOF: Intel: Add platform differentiation for APL and CNL
      ASoC: SOF: Add ACPI device support
      ASoC: SOF: Add PCI device support
      ASoC: SOF: Add Build support for SOF core and Intel drivers
      ASoC: Intel: Make sure BDW based machine drivers build for SOF
      UBUNTU: SAUCE: ASoC: SOF: Intel: Add HSW HW DSP support

Libin Yang (3):
      ASoC: pcm: save fixed-up hw_params of BE
      ASoC: codec: hdac_hdmi add device_link to card device
      UBUNTU: SAUCE: ASoC: soc-pcm: BE dai needs prepare when pause release after resume

Mariusz Ceier (1):
      ALSA: hda: Avoid NULL pointer dereference at snd_hdac_stream_start()

Mark Brown (1):
      ASoC: core: Fix multi-CODEC setups

Pankaj Bharadiya (2):
      ASoC: dapm: Fix NULL pointer dereference in snd_soc_dapm_free_kcontrol
      ASoC: dapm: Initialize private_value in snd_soc_dapm_new_dai

Pierre-Louis Bossart (35):
      ASoC: soc-acpi: add static inline fallbacks when CONFIG_ACPI=n
      ASoC: add helper to change platform name for all dailinks
      ASoC: dapm: fix use-after-free issue with dailink sname
      ASoC: dapm: harden use of lookup tables
      ASoC: core: don't increase component module refcount unconditionally
      ASoC: Intel: Skylake: set .ignore_module_refcount field in component
      ASoC: hdac_hdmi: use devm_kzalloc for all structures
      ASoC: Intel: bxt-match: remove prefix for SOF files
      ASoC: Intel: byt-match.c: remove prefix for SOF files
      ASoC: Intel: cht-match: remove prefix for SOF files
      ASoC: Intel: cnl-match: remove prefix for SOF files
      ASoC: Intel: glk-match: remove prefix for SOF files
      ASoC: Intel: hda-match: remove prefix for SOF files
      ASoC: Intel: hsw-bdw-match: remove prefix for SOF files
      ASoC: Intel: icl-match: remove prefix for SOF files
      ASoC: core: support driver alias names for FE topology overrides
      ASoC: topology: fix endianness issues
      ASoC: topology: fix big-endian check
      ASoC: SOF: Add xtensa support
      ASoC: SOF: Add utils
      ASoC: SOF: Intel: Add support for HDAudio codecs
      ASoC: Intel: Kconfig: expose common option between SST and SOF drivers
      ASoC: Intel: select relevant machine drivers for SOF
      UBUNTU: SAUCE: ASoC: Intel: ApolloLake support for SOF
      UBUNTU: SAUCE: ASoC: Intel: Haswell support with SOF
      UBUNTU: SAUCE: ASoC: Intel: Make sure HSW based machine drivers build for SOF
      UBUNTU: SAUCE: ASoC: SOF: Intel: add Build support for Haswell
      UBUNTU: SAUCE: ASoC: SOF: Intel: Add SKL-specific code loader
      UBUNTU: SAUCE: ASoC: SOF: Intel: Add platform differentiation for SKL
      UBUNTU: SAUCE: ASoC: SOF: Intel: add Build support for Skylake and Kabylake
      UBUNTU: SAUCE: ASoC: Intel: Kconfig: disable SST and legacy drivers when SOF is selected
      UBUNTU: SAUCE: ASoC: SOF: pcm: remove checks on preallocate_pages
      UBUNTU: SAUCE: ASoC: SOF: add Kconfig option for strict ABI checks
      UBUNTU: SAUCE: ASOC: SOF: ipc: add support for stricter ABI checks
      UBUNTU: SAUCE: ASoC: SOF: topology: add support for stricter ABI checks

Rander Wang (7):
      ASoC:soc-pcm:fix a codec fixup issue in TDM case
      ASoC:hdac_hda:use correct format to setup hda codec
      ASoC:intel:skl:fix a simultaneous playback & capture issue on hda platform
      UBUNTU: SAUCE: ASoC: Intel: skl_hda_dsp_generic: add DMIC support
      UBUNTU: SAUCE: SoC: Intel: skl_hda_dsp_generic:refine code style
      UBUNTU: SAUCE: ASoC:SOF: fix FW loaded failed
      UBUNTU: SAUCE: ASoC:SOF:get spcm from FE dai link during BE dai link prepare

Ranjani Sridharan (10):
      ASoC: topology: add SND_SOC_DOBJ_GRAPH type for dapm routes
      ASoC: topology: modify dapm route loading routine and add dapm route unloading
      ALSA: PCM: check if ops are defined before suspending PCM
      ASoC: dapm: set power_check callback for widgets that shouldnt be always on
      ASoC: intel: skylake: add remove() callback for component driver
      ASoC: core: remove link components before cleaning up card resources
      ASoC: topology: Use the correct dobj to free enum control values and texts
      ASoC: core: conditionally increase module refcount on component open
      ASoC: pcm: update module refcount if module_get_upon_open is set
      ASoC: pcm: fix error handling when try_module_get() fails.

Ricardo Biehl Pasquali (1):
      ALSA: pcm: Comment why read blocks when PCM is not running

Sameer Pujar (4):
      ALSA: hda: add verbs for stripe control
      ALSA: hda: Add api to program stripe control bits
      ALSA: hda: add register offset for stripe control
      ALSA: hda: program stripe bits for controller

Seppo Ingalsuo (1):
      UBUNTU: SAUCE: ASoC: dapm: fix kcontrols for effect widgets

Stefan Agner (1):
      ASoC: soc-core: remove error due to probe deferral

Sylwester Nawrocki (3):
      ASoC: dmaengine: Improve of_node test in dmaengine_pcm_request_chan_of()
      ASoC: dmaengine: Extend use of chan_names provided in custom DMA config
      ASoC: dmaengine: Remove unused SND_DMAENGINE_PCM_FLAG_CUSTOM_CHANNEL_NAME flag

Takashi Iwai (46):
      ALSA: pcm: Suspend streams globally via device type PM ops
      ALSA: pcm: Make snd_pcm_suspend() local static
      ALSA: pcm: Call snd_card_unref() inside in_pcm_file()
      ALSA: pcm: Unify snd_pcm_group initialization
      ALSA: pcm: Make PCM linked list consistent while re-grouping
      ALSA: pcm: Avoid confusing loop in snd_pcm_unlink()
      ALSA: pcm: More fine-grained PCM link locking
      ALSA: pcm: Remove down_write() hack for snd_pcm_link_rwsem
      ALSA: pcm: Cleanup snd_pcm_stream_lock() & co
      ALSA: pcm: Drop unused snd_pcm_substream.file field
      ALSA: pcm: Simplify proc file destruction
      ALSA: proc: Avoid possible leaks of snd_info_entry objects
      ALSA: pcm: Use the common error path in __snd_pcm_lib_xfer()
      ALSA: isa: Avoid passing NULL to memory allocators
      ALSA: core: Don't allow NULL device for memory allocation
      ALSA: info: Always register entries recursively
      ALSA: pcm: Remove superfluous snd_info_register() calls
      ALSA: compress: Remove superfluous snd_info_register() calls
      ALSA: info: Add standard helpers for card proc file entries
      ALSA: info: Drop unused snd_info_entry.card field
      ALSA: info: Minor optimization
      ALSA: info: Move card id proc creation into info.c
      ASoC: intel: Drop superfluous PCM preallocation error checks
      ASoC: dmaengine: Drop superfluous PCM preallocation error checks
      ALSA: pcm: Define snd_pcm_lib_preallocate_*() as returning void
      ALSA: hda: Fix racy display power access
      media: Drop superfluous PCM preallocation error checks
      ALSA: atmel: Drop superfluous PCM preallocation error checks
      ALSA: parisc: Drop superfluous PCM preallocation error checks
      ALSA: pci: Drop superfluous PCM preallocation error checks
      ALSA: ppc: Drop superfluous PCM preallocation error checks
      ASoC: txx9: Drop superfluous PCM preallocation error checks
      ASoC: xtensa: Drop superfluous PCM preallocation error checks
      ASoC: mediatek: Drop superfluous PCM preallocation error checks
      ASoC: stm: Drop superfluous PCM preallocation error checks
      ASoC: dwc: Drop superfluous PCM preallocation error checks
      ASoC: uniphier: Drop superfluous PCM preallocation error checks
      ALSA: sparc: Drop superfluous PCM preallocation error checks
      ALSA: spi: Drop superfluous PCM preallocation error checks
      ASoC: amd: Avoid passing NULL to memory allocators
      ASoC: amd: Drop superfluous PCM preallocation error checks
      ASoC: sh: Avoid passing NULL to memory allocators
      ASoC: sh: Drop superfluous PCM preallocation error checks
      ALSA: x86: Remove superfluous snd_pcm_suspend*() calls
      ALSA: pci: Remove superfluous snd_pcm_suspend*() calls
      ALSA: usb: Drop superfluous PCM preallocation error checks

Zhiwei Jiang (1):
      ASoC: dapm: Add warnings for widget overwrite when adding route

 Documentation/driver-api/component.rst             |   17 +
 Documentation/driver-api/device_link.rst           |    3 +
 Documentation/driver-api/index.rst                 |    1 +
 .../sound/kernel-api/writing-an-alsa-driver.rst    |   10 +-
 debian.master/config/config.common.ubuntu          |   45 +
 debian.oem-osp1/config/config.common.ubuntu        |   45 +
 drivers/acpi/utils.c                               |   24 +-
 drivers/base/component.c                           |  206 +-
 drivers/gpu/drm/i915/intel_audio.c                 |    4 +-
 drivers/media/pci/solo6x10/solo6x10-g723.c         |    4 +-
 drivers/media/pci/tw686x/tw686x-audio.c            |    3 +-
 include/acpi/acpi_bus.h                            |    3 +
 include/drm/i915_component.h                       |    4 +
 include/linux/acpi.h                               |    6 +
 include/linux/component.h                          |   76 +
 include/sound/core.h                               |    1 -
 include/sound/dmaengine_pcm.h                      |    4 -
 include/sound/hda_component.h                      |    5 +-
 include/sound/hda_register.h                       |    2 +
 include/sound/hda_verbs.h                          |    2 +
 include/sound/hdaudio.h                            |    3 +
 include/sound/info.h                               |   36 +-
 include/sound/memalloc.h                           |    1 -
 include/sound/pcm.h                                |   29 +-
 include/sound/simple_card_utils.h                  |    2 +-
 include/sound/soc-acpi.h                           |   28 +-
 include/sound/soc-dapm.h                           |   27 +-
 include/sound/soc-topology.h                       |    8 +-
 include/sound/soc.h                                |   44 +-
 include/sound/sof.h                                |  100 +
 include/sound/sof/control.h                        |  158 +
 include/sound/sof/dai-intel.h                      |  178 ++
 include/sound/sof/dai.h                            |   75 +
 include/sound/sof/header.h                         |  158 +
 include/sound/sof/info.h                           |  118 +
 include/sound/sof/pm.h                             |   48 +
 include/sound/sof/stream.h                         |  148 +
 include/sound/sof/topology.h                       |  256 ++
 include/sound/sof/trace.h                          |   67 +
 include/sound/sof/xtensa.h                         |   44 +
 include/uapi/sound/sof/abi.h                       |   62 +
 include/uapi/sound/sof/eq.h                        |  172 ++
 include/uapi/sound/sof/fw.h                        |   78 +
 include/uapi/sound/sof/header.h                    |   27 +
 include/uapi/sound/sof/manifest.h                  |  188 ++
 include/uapi/sound/sof/tokens.h                    |  107 +
 include/uapi/sound/sof/tone.h                      |   21 +
 include/uapi/sound/sof/trace.h                     |   66 +
 sound/atmel/ac97c.c                                |    4 +-
 sound/core/compress_offload.c                      |   11 +-
 sound/core/info.c                                  |  131 +-
 sound/core/init.c                                  |   31 +-
 sound/core/memalloc.c                              |    2 +
 sound/core/oss/pcm_oss.c                           |    1 -
 sound/core/pcm.c                                   |  163 +-
 sound/core/pcm_lib.c                               |    9 +-
 sound/core/pcm_local.h                             |    1 +
 sound/core/pcm_memory.c                            |   62 +-
 sound/core/pcm_native.c                            |  315 +-
 sound/hda/ext/hdac_ext_bus.c                       |    1 -
 sound/hda/hdac_bus.c                               |    1 +
 sound/hda/hdac_component.c                         |   10 +-
 sound/hda/hdac_controller.c                        |    8 +-
 sound/hda/hdac_i915.c                              |    6 +-
 sound/hda/hdac_stream.c                            |   47 +-
 sound/isa/ad1816a/ad1816a_lib.c                    |    2 +-
 sound/isa/cmi8330.c                                |    2 +-
 sound/isa/es1688/es1688_lib.c                      |    2 +-
 sound/isa/es18xx.c                                 |    2 +-
 sound/isa/gus/gus_pcm.c                            |    4 +-
 sound/isa/sb/sb16_main.c                           |    2 +-
 sound/isa/sb/sb8_main.c                            |    2 +-
 sound/isa/sscape.c                                 |    7 +-
 sound/isa/wss/wss_lib.c                            |    2 +-
 sound/parisc/harmony.c                             |   10 +-
 sound/pci/ad1889.c                                 |    7 +-
 sound/pci/ali5451/ali5451.c                        |    4 +-
 sound/pci/als300.c                                 |    1 -
 sound/pci/als4000.c                                |    1 -
 sound/pci/atiixp_modem.c                           |    2 -
 sound/pci/aw2/aw2-alsa.c                           |   40 +-
 sound/pci/azt3328.c                                |    4 -
 sound/pci/bt87x.c                                  |   10 +-
 sound/pci/ca0106/ca0106_main.c                     |   19 +-
 sound/pci/cmipci.c                                 |    4 -
 sound/pci/cs4281.c                                 |    2 -
 sound/pci/cs46xx/cs46xx_lib.c                      |    6 -
 sound/pci/cs5535audio/cs5535audio_pm.c             |    1 -
 sound/pci/ctxfi/ctatc.c                            |    8 -
 sound/pci/echoaudio/echoaudio.c                    |   19 +-
 sound/pci/emu10k1/emu10k1.c                        |    6 -
 sound/pci/emu10k1/emupcm.c                         |   22 +-
 sound/pci/emu10k1/p16v.c                           |   17 +-
 sound/pci/ens1370.c                                |    3 -
 sound/pci/es1938.c                                 |    1 -
 sound/pci/es1968.c                                 |    1 -
 sound/pci/fm801.c                                  |    1 -
 sound/pci/hda/hda_codec.c                          |   10 +-
 sound/pci/hda/patch_realtek.c                      |    7 +
 sound/pci/ice1712/ice1712.c                        |    3 -
 sound/pci/ice1712/ice1724.c                        |    3 -
 sound/pci/intel8x0.c                               |    2 -
 sound/pci/intel8x0m.c                              |    3 -
 sound/pci/lx6464es/lx6464es.c                      |    8 +-
 sound/pci/maestro3.c                               |    1 -
 sound/pci/nm256/nm256.c                            |    1 -
 sound/pci/oxygen/oxygen_lib.c                      |    5 +-
 sound/pci/riptide/riptide.c                        |    1 -
 sound/pci/rme96.c                                  |    2 -
 sound/pci/rme9652/hdspm.c                          |   20 +-
 sound/pci/sis7019.c                                |    1 -
 sound/pci/trident/trident_main.c                   |    4 -
 sound/pci/via82xx.c                                |    2 -
 sound/pci/via82xx_modem.c                          |   10 +-
 sound/pci/ymfpci/ymfpci_main.c                     |    4 -
 sound/ppc/snd_ps3.c                                |    6 +-
 sound/soc/Kconfig                                  |    1 +
 sound/soc/Makefile                                 |    1 +
 sound/soc/amd/acp-pcm-dma.c                        |   26 +-
 sound/soc/amd/raven/acp3x-pcm-dma.c                |    8 +-
 sound/soc/codecs/hdac_hda.c                        |   59 +-
 sound/soc/codecs/hdac_hda.h                        |    1 +
 sound/soc/codecs/hdac_hdmi.c                       |   98 +-
 sound/soc/codecs/max9860.c                         |    3 +-
 sound/soc/codecs/pcm512x.c                         |    5 +-
 sound/soc/codecs/tlv320aic31xx.c                   |   16 +-
 sound/soc/codecs/tlv320aic3x.c                     |   25 +-
 sound/soc/codecs/wm8770.c                          |   18 +-
 sound/soc/codecs/wm8962.c                          |    9 +-
 sound/soc/codecs/wm8995.c                          |   29 +-
 sound/soc/codecs/wm8996.c                          |    9 +-
 sound/soc/dwc/dwc-pcm.c                            |    3 +-
 sound/soc/generic/audio-graph-card.c               |    5 +-
 sound/soc/generic/simple-card-utils.c              |    4 +-
 sound/soc/generic/simple-card.c                    |    7 +-
 sound/soc/intel/Kconfig                            |   11 +-
 sound/soc/intel/atom/sst-mfld-platform-pcm.c       |   17 +-
 sound/soc/intel/baytrail/sst-baytrail-pcm.c        |   15 +-
 sound/soc/intel/boards/Kconfig                     |   28 +-
 sound/soc/intel/boards/bdw-rt5677.c                |    4 +
 sound/soc/intel/boards/broadwell.c                 |    4 +
 sound/soc/intel/boards/haswell.c                   |    4 +
 sound/soc/intel/boards/skl_hda_dsp_common.c        |   22 +-
 sound/soc/intel/boards/skl_hda_dsp_common.h        |    2 +-
 sound/soc/intel/boards/skl_hda_dsp_generic.c       |   19 +-
 sound/soc/intel/common/soc-acpi-intel-bxt-match.c  |   20 +-
 sound/soc/intel/common/soc-acpi-intel-byt-match.c  |   40 +-
 sound/soc/intel/common/soc-acpi-intel-cht-match.c  |   56 +-
 sound/soc/intel/common/soc-acpi-intel-cnl-match.c  |    4 +-
 sound/soc/intel/common/soc-acpi-intel-glk-match.c  |    8 +-
 sound/soc/intel/common/soc-acpi-intel-hda-match.c  |    2 +-
 .../intel/common/soc-acpi-intel-hsw-bdw-match.c    |   16 +-
 sound/soc/intel/common/soc-acpi-intel-icl-match.c  |    4 +-
 sound/soc/intel/haswell/sst-haswell-pcm.c          |   10 +-
 sound/soc/intel/skylake/skl-pcm.c                  |   36 +-
 .../soc/mediatek/common/mtk-afe-platform-driver.c  |    6 +-
 sound/soc/sh/fsi.c                                 |    3 +-
 sound/soc/sh/rcar/core.c                           |    5 +-
 sound/soc/sh/siu_pcm.c                             |   15 +-
 sound/soc/soc-compress.c                           |  177 +-
 sound/soc/soc-core.c                               |  262 +-
 sound/soc/soc-dapm.c                               |  286 +-
 sound/soc/soc-generic-dmaengine-pcm.c              |   18 +-
 sound/soc/soc-pcm.c                                |   78 +-
 sound/soc/soc-topology.c                           |  491 ++-
 sound/soc/sof/Kconfig                              |  156 +
 sound/soc/sof/Makefile                             |   18 +
 sound/soc/sof/control.c                            |  552 ++++
 sound/soc/sof/core.c                               |  506 ++++
 sound/soc/sof/debug.c                              |  232 ++
 sound/soc/sof/intel/Kconfig                        |  279 ++
 sound/soc/sof/intel/Makefile                       |   21 +
 sound/soc/sof/intel/apl.c                          |  109 +
 sound/soc/sof/intel/bdw.c                          |  713 +++++
 sound/soc/sof/intel/byt.c                          |  874 ++++++
 sound/soc/sof/intel/cnl.c                          |  246 ++
 sound/soc/sof/intel/hda-bus.c                      |  108 +
 sound/soc/sof/intel/hda-codec.c                    |  171 ++
 sound/soc/sof/intel/hda-ctrl.c                     |  181 ++
 sound/soc/sof/intel/hda-dai.c                      |  356 +++
 sound/soc/sof/intel/hda-dsp.c                      |  455 +++
 sound/soc/sof/intel/hda-ipc.c                      |  455 +++
 sound/soc/sof/intel/hda-loader-skl.c               |  516 ++++
 sound/soc/sof/intel/hda-loader.c                   |  371 +++
 sound/soc/sof/intel/hda-pcm.c                      |  240 ++
 sound/soc/sof/intel/hda-stream.c                   |  704 +++++
 sound/soc/sof/intel/hda-trace.c                    |   94 +
 sound/soc/sof/intel/hda.c                          |  671 +++++
 sound/soc/sof/intel/hda.h                          |  564 ++++
 sound/soc/sof/intel/hsw.c                          |  714 +++++
 sound/soc/sof/intel/intel-ipc.c                    |   92 +
 sound/soc/sof/intel/shim.h                         |  183 ++
 sound/soc/sof/intel/skl.c                          |  102 +
 sound/soc/sof/ipc.c                                |  841 ++++++
 sound/soc/sof/loader.c                             |  400 +++
 sound/soc/sof/nocodec.c                            |  109 +
 sound/soc/sof/ops.c                                |  163 +
 sound/soc/sof/ops.h                                |  399 +++
 sound/soc/sof/pcm.c                                |  719 +++++
 sound/soc/sof/pm.c                                 |  385 +++
 sound/soc/sof/sof-acpi-dev.c                       |  312 ++
 sound/soc/sof/sof-pci-dev.c                        |  373 +++
 sound/soc/sof/sof-priv.h                           |  631 ++++
 sound/soc/sof/topology.c                           | 3181 ++++++++++++++++++++
 sound/soc/sof/trace.c                              |  297 ++
 sound/soc/sof/utils.c                              |  112 +
 sound/soc/sof/xtensa/Kconfig                       |    2 +
 sound/soc/sof/xtensa/Makefile                      |    5 +
 sound/soc/sof/xtensa/core.c                        |  138 +
 sound/soc/stm/stm32_adfsdm.c                       |    5 +-
 sound/soc/txx9/txx9aclc.c                          |    4 +-
 sound/soc/uniphier/aio-dma.c                       |    3 +-
 sound/soc/xtensa/xtfpga-i2s.c                      |    6 +-
 sound/sparc/dbri.c                                 |    9 +-
 sound/spi/at73c213.c                               |    2 +-
 sound/usb/usx2y/usbusx2yaudio.c                    |   21 +-
 sound/usb/usx2y/usx2yhwdeppcm.c                    |   19 +-
 sound/x86/intel_hdmi_audio.c                       |   12 -
 218 files changed, 22104 insertions(+), 1541 deletions(-)
 create mode 100644 Documentation/driver-api/component.rst
 create mode 100644 include/sound/sof.h
 create mode 100644 include/sound/sof/control.h
 create mode 100644 include/sound/sof/dai-intel.h
 create mode 100644 include/sound/sof/dai.h
 create mode 100644 include/sound/sof/header.h
 create mode 100644 include/sound/sof/info.h
 create mode 100644 include/sound/sof/pm.h
 create mode 100644 include/sound/sof/stream.h
 create mode 100644 include/sound/sof/topology.h
 create mode 100644 include/sound/sof/trace.h
 create mode 100644 include/sound/sof/xtensa.h
 create mode 100644 include/uapi/sound/sof/abi.h
 create mode 100644 include/uapi/sound/sof/eq.h
 create mode 100644 include/uapi/sound/sof/fw.h
 create mode 100644 include/uapi/sound/sof/header.h
 create mode 100644 include/uapi/sound/sof/manifest.h
 create mode 100644 include/uapi/sound/sof/tokens.h
 create mode 100644 include/uapi/sound/sof/tone.h
 create mode 100644 include/uapi/sound/sof/trace.h
 create mode 100644 sound/soc/sof/Kconfig
 create mode 100644 sound/soc/sof/Makefile
 create mode 100644 sound/soc/sof/control.c
 create mode 100644 sound/soc/sof/core.c
 create mode 100644 sound/soc/sof/debug.c
 create mode 100644 sound/soc/sof/intel/Kconfig
 create mode 100644 sound/soc/sof/intel/Makefile
 create mode 100644 sound/soc/sof/intel/apl.c
 create mode 100644 sound/soc/sof/intel/bdw.c
 create mode 100644 sound/soc/sof/intel/byt.c
 create mode 100644 sound/soc/sof/intel/cnl.c
 create mode 100644 sound/soc/sof/intel/hda-bus.c
 create mode 100644 sound/soc/sof/intel/hda-codec.c
 create mode 100644 sound/soc/sof/intel/hda-ctrl.c
 create mode 100644 sound/soc/sof/intel/hda-dai.c
 create mode 100644 sound/soc/sof/intel/hda-dsp.c
 create mode 100644 sound/soc/sof/intel/hda-ipc.c
 create mode 100644 sound/soc/sof/intel/hda-loader-skl.c
 create mode 100644 sound/soc/sof/intel/hda-loader.c
 create mode 100644 sound/soc/sof/intel/hda-pcm.c
 create mode 100644 sound/soc/sof/intel/hda-stream.c
 create mode 100644 sound/soc/sof/intel/hda-trace.c
 create mode 100644 sound/soc/sof/intel/hda.c
 create mode 100644 sound/soc/sof/intel/hda.h
 create mode 100644 sound/soc/sof/intel/hsw.c
 create mode 100644 sound/soc/sof/intel/intel-ipc.c
 create mode 100644 sound/soc/sof/intel/shim.h
 create mode 100644 sound/soc/sof/intel/skl.c
 create mode 100644 sound/soc/sof/ipc.c
 create mode 100644 sound/soc/sof/loader.c
 create mode 100644 sound/soc/sof/nocodec.c
 create mode 100644 sound/soc/sof/ops.c
 create mode 100644 sound/soc/sof/ops.h
 create mode 100644 sound/soc/sof/pcm.c
 create mode 100644 sound/soc/sof/pm.c
 create mode 100644 sound/soc/sof/sof-acpi-dev.c
 create mode 100644 sound/soc/sof/sof-pci-dev.c
 create mode 100644 sound/soc/sof/sof-priv.h
 create mode 100644 sound/soc/sof/topology.c
 create mode 100644 sound/soc/sof/trace.c
 create mode 100644 sound/soc/sof/utils.c
 create mode 100644 sound/soc/sof/xtensa/Kconfig
 create mode 100644 sound/soc/sof/xtensa/Makefile
 create mode 100644 sound/soc/sof/xtensa/core.c

-- 
2.17.1




More information about the kernel-team mailing list