[PATCH 00/12] ASoC: SOF: Data probing

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This set of patches achieves few goals in order to enable data probing
feature for audio DSP.

First, provide new and alter existing interfaces (page allocation,
runtime flow adjustments) to make them compress friendly.

For HDA part, work has been done to account for compress streams when
servicing IRQs, setting up BDLs and assigning DMAs.

Finally, the end goal which are the probe APIs and usage itself. Probes
can be treated as endpoints which allow for data extraction from or
injection to target module - a great ally when debugging problematic
audio issues such as distortions, glitches or gaps.
Compress streams are a weapon of choice here to provide a lightweight
implementation.

While all available IPCs have been defined, current implementation
covers extraction only, with injection scheduled for a later date.

Initial review and development of probes can be found under:
https://github.com/thesofproject/linux/pull/1276

with the hda-compress-enable set of patches being separated and
reviewed on:
https://github.com/thesofproject/linux/pull/1571

Tested on CML-U with rt5682 i2s board.

Cezary Rojewski (12):
  ALSA: hda: Allow for compress stream to hdac_ext_stream assignment
  ALSA: hda: Prepare for compress stream support
  ALSA: hda: Interrupt servicing and BDL setup for compress streams
  ALSA: core: Expand DMA buffer information
  ALSA: core: Implement compress page allocation and free routines
  ASoC: SOF: Intel: Account for compress streams when servicing IRQs
  ASoC: SOF: Implement Probe IPC API
  ASoC: SOF: Generic probe compress operations
  ASoC: SOF: Intel: Probe compress operations
  ASoC: SOF: Provide probe debugfs support
  ASoC: SOF: Intel: Add Probe compress CPU DAIs
  ASoC: Intel: sof_rt5682: Add compress probe DAI links

 include/sound/compress_driver.h     |  40 +++-
 include/sound/hdaudio.h             |   2 +
 include/sound/hdaudio_ext.h         |   2 +
 include/sound/sof/header.h          |  11 ++
 sound/core/compress_offload.c       |  42 ++++
 sound/hda/ext/hdac_ext_stream.c     |  49 ++++-
 sound/hda/hdac_controller.c         |   4 +-
 sound/hda/hdac_stream.c             |  52 +++--
 sound/soc/intel/boards/sof_rt5682.c |  20 +-
 sound/soc/sof/Kconfig               |   9 +
 sound/soc/sof/Makefile              |   3 +-
 sound/soc/sof/compress.c            | 139 ++++++++++++++
 sound/soc/sof/compress.h            |  29 +++
 sound/soc/sof/debug.c               | 208 ++++++++++++++++++++
 sound/soc/sof/intel/Kconfig         |  10 +
 sound/soc/sof/intel/Makefile        |   1 +
 sound/soc/sof/intel/apl.c           |   9 +
 sound/soc/sof/intel/cnl.c           |   9 +
 sound/soc/sof/intel/hda-compress.c  | 132 +++++++++++++
 sound/soc/sof/intel/hda-dai.c       |  28 +++
 sound/soc/sof/intel/hda-ipc.c       |   4 +-
 sound/soc/sof/intel/hda-stream.c    |  26 ++-
 sound/soc/sof/intel/hda.h           |  30 +++
 sound/soc/sof/ops.h                 |  43 +++++
 sound/soc/sof/pcm.c                 |  11 +-
 sound/soc/sof/probe.c               | 287 ++++++++++++++++++++++++++++
 sound/soc/sof/probe.h               |  85 ++++++++
 sound/soc/sof/sof-priv.h            |  24 +++
 28 files changed, 1266 insertions(+), 43 deletions(-)
 create mode 100644 sound/soc/sof/compress.c
 create mode 100644 sound/soc/sof/compress.h
 create mode 100644 sound/soc/sof/intel/hda-compress.c
 create mode 100644 sound/soc/sof/probe.c
 create mode 100644 sound/soc/sof/probe.h

-- 
2.17.1

_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
https://mailman.alsa-project.org/mailman/listinfo/alsa-devel



[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Pulse Audio]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux