All of lore.kernel.org
 help / color / mirror / Atom feed
* [RESEND PATCH v2 00/15] ASoC: qcom: Add support to QDSP6 based audio
@ 2017-12-14 17:33 ` srinivas.kandagatla at linaro.org
  0 siblings, 0 replies; 166+ messages in thread
From: srinivas.kandagatla @ 2017-12-14 17:33 UTC (permalink / raw)
  To: Andy Gross, Mark Brown, linux-arm-msm, alsa-devel
  Cc: David Brown, Rob Herring, Mark Rutland, Liam Girdwood,
	Patrick Lai, Banajit Goswami, Jaroslav Kysela, Takashi Iwai,
	linux-soc, devicetree, linux-kernel, linux-arm-kernel, sboyd,
	Srinivas Kandagatla

From: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>

This patchset aims to provide a very basic version of QCOM DSP based
audio support which is available in downstream andriod kernels.
This patchset only support Digital audio based for HDMI-RX and will
add support to other features as we move on.

QDSP has both static and dynamic modules. static modules like AFE
(Audio FrontEnd), ADM (Audio Device Manager), ASM(Audio Stream Manager)
and CORE to provide this audio services.
All these services use APR (Asynchronous Packet Router) protocol
via smd/glink transport to communicate with Application processor.
More details on each module is availble in there respective patch.

This patchset is tested on DB820c, with HDMI audio playback
on top of mainline, also tested slimbus analog audio using wcd9355
with an additional small patch.

Here is block diagram to give a quick overview of the components


  +---------+          +---------+         +---------+   
  |  q6asm  |          |q6routing|         | q6afe   | 
  |  fedai  | <------> |  mixers | <-----> | bedai   |  
  +---------+          +---------+         +---------+   
      ^                     ^                   ^
      |                     |                   |
      |  +------------------+----------------+  |       
      |  |                  |                |  |       
      v  v                  v                v  v       
  +---------+          +---------+         +---------+ 
  |   q6ASM |          |  q6ADM  |         |   q6AFE |  
  +---------+          +---------+         +---------+  
      ^                     ^                   ^          ^
      |                     |                   | CPU Side |
------+---------------------+-------------------+--------
      |                     |                   |
      |                     |APR(smd/glink)     | 
      |                     |                   |
      |  +------------------+----------------+  |
      |  |                  |                |  |
+-----+--+-----------------------------------+--+-------
      |  |                  |                |  | QDSP Side |
      v  v                  v                v  v           v
 +---------+          +---------+         +---------+
 |   ASM   | <------> |   ADM   | <-----> |   AFE   |
 +---------+          +---------+         +---------+
                                               ^
                                               | 
                           +-------------------+
                           |
---------------------------+--------------------------
                           |            Audio I/O |
                           v                      v
    +--------------------------------------------------+
    |                Audio devices                     |
    | CODEC | HDMI-TX | PCM  | SLIMBUS | I2S |MI2S |...|
    |                                                  |
    +--------------------------------------------------+

Changes since RFC:
- Converted APR driver to proper bus driver 
- Added API version info to apr devices
- Added q6core driver.
- Fixed various issues spotted by Banajit and Kasam.
- Added kernel doc to exported symbols.
- renamed qdsp6v2 to qdsp6 as api version info can be
	 used from apr device.
- removed unnecessary dt bindings for apr devices.

Srinivas Kandagatla (15):
  dt-bindings: soc: qcom: Add bindings for APR bus
  soc: qcom: add support to APR bus driver
  ASoC: qcom: qdsp6: Add common qdsp6 helper functions
  ASoC: qcom: qdsp6: Add support to Q6AFE
  ASoC: qcom: qdsp6: Add support to Q6ADM
  ASoC: qcom: qdsp6: Add support to Q6ASM
  ASoC: qcom: q6asm: Add support to memory map and unmap
  ASoC: qcom: q6asm: add support to audio stream apis
  ASoC: qcom: qdsp6: Add support to Q6CORE
  ASoC: qcom: qdsp6: Add support to q6routing driver
  ASoC: qcom: qdsp6: Add support to q6afe dai driver
  ASoC: qcom: qdsp6: Add support to q6asm dai driver
  dt-bindings: sound: qcom: Add devicetree bindings for apq8096
  ASoC: qcom: apq8096: Add db820c machine driver
  arm64: dts: msm8996: db820c: Add sound card support

 .../devicetree/bindings/soc/qcom/qcom,apr.txt      |   28 +
 .../devicetree/bindings/sound/qcom,apq8096.txt     |   22 +
 arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi       |    5 +
 arch/arm64/boot/dts/qcom/msm8996.dtsi              |   33 +
 drivers/soc/qcom/Kconfig                           |    8 +
 drivers/soc/qcom/Makefile                          |    1 +
 drivers/soc/qcom/apr.c                             |  395 +++++++
 include/linux/mod_devicetable.h                    |   13 +
 include/linux/soc/qcom/apr.h                       |  174 +++
 sound/soc/qcom/Kconfig                             |   51 +
 sound/soc/qcom/Makefile                            |    5 +
 sound/soc/qcom/apq8096.c                           |  124 +++
 sound/soc/qcom/qdsp6/Makefile                      |    7 +
 sound/soc/qcom/qdsp6/common.h                      |  225 ++++
 sound/soc/qcom/qdsp6/q6adm.c                       |  602 +++++++++++
 sound/soc/qcom/qdsp6/q6adm.h                       |   24 +
 sound/soc/qcom/qdsp6/q6afe-dai.c                   |  241 +++++
 sound/soc/qcom/qdsp6/q6afe.c                       |  503 +++++++++
 sound/soc/qcom/qdsp6/q6afe.h                       |   30 +
 sound/soc/qcom/qdsp6/q6asm-dai.c                   |  534 ++++++++++
 sound/soc/qcom/qdsp6/q6asm.c                       | 1119 ++++++++++++++++++++
 sound/soc/qcom/qdsp6/q6asm.h                       |   61 ++
 sound/soc/qcom/qdsp6/q6core.c                      |  227 ++++
 sound/soc/qcom/qdsp6/q6routing.c                   |  386 +++++++
 sound/soc/qcom/qdsp6/q6routing.h                   |    9 +
 25 files changed, 4827 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/soc/qcom/qcom,apr.txt
 create mode 100644 Documentation/devicetree/bindings/sound/qcom,apq8096.txt
 create mode 100644 drivers/soc/qcom/apr.c
 create mode 100644 include/linux/soc/qcom/apr.h
 create mode 100644 sound/soc/qcom/apq8096.c
 create mode 100644 sound/soc/qcom/qdsp6/Makefile
 create mode 100644 sound/soc/qcom/qdsp6/common.h
 create mode 100644 sound/soc/qcom/qdsp6/q6adm.c
 create mode 100644 sound/soc/qcom/qdsp6/q6adm.h
 create mode 100644 sound/soc/qcom/qdsp6/q6afe-dai.c
 create mode 100644 sound/soc/qcom/qdsp6/q6afe.c
 create mode 100644 sound/soc/qcom/qdsp6/q6afe.h
 create mode 100644 sound/soc/qcom/qdsp6/q6asm-dai.c
 create mode 100644 sound/soc/qcom/qdsp6/q6asm.c
 create mode 100644 sound/soc/qcom/qdsp6/q6asm.h
 create mode 100644 sound/soc/qcom/qdsp6/q6core.c
 create mode 100644 sound/soc/qcom/qdsp6/q6routing.c
 create mode 100644 sound/soc/qcom/qdsp6/q6routing.h

-- 
2.15.0

^ permalink raw reply	[flat|nested] 166+ messages in thread

end of thread, other threads:[~2018-02-07 12:16 UTC | newest]

Thread overview: 166+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-12-14 17:33 [RESEND PATCH v2 00/15] ASoC: qcom: Add support to QDSP6 based audio srinivas.kandagatla
2017-12-14 17:33 ` srinivas.kandagatla at linaro.org
2017-12-14 17:33 ` [RESEND PATCH v2 01/15] dt-bindings: soc: qcom: Add bindings for APR bus srinivas.kandagatla
2017-12-14 17:33   ` srinivas.kandagatla at linaro.org
2017-12-14 17:33   ` srinivas.kandagatla
     [not found]   ` <20171214173402.19074-2-srinivas.kandagatla-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2017-12-16 17:27     ` Rob Herring
2017-12-16 17:27       ` Rob Herring
2017-12-16 17:27       ` Rob Herring
2017-12-18  9:50       ` Srinivas Kandagatla
2017-12-18  9:50         ` Srinivas Kandagatla
2018-01-03  0:35   ` Bjorn Andersson
2018-01-03  0:35     ` Bjorn Andersson
2018-01-03 16:26     ` Srinivas Kandagatla
2018-01-03 16:26       ` Srinivas Kandagatla
2018-01-03 16:26       ` Srinivas Kandagatla
2017-12-14 17:33 ` [RESEND PATCH v2 02/15] soc: qcom: add support to APR bus driver srinivas.kandagatla
2017-12-14 17:33   ` srinivas.kandagatla at linaro.org
     [not found]   ` <20171214173402.19074-3-srinivas.kandagatla-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2018-01-01 23:29     ` Bjorn Andersson
2018-01-01 23:29       ` Bjorn Andersson
2018-01-01 23:29       ` Bjorn Andersson
2018-01-03 16:26       ` Srinivas Kandagatla
2018-01-03 16:26         ` Srinivas Kandagatla
2018-01-03 16:26         ` Srinivas Kandagatla
2017-12-14 17:33 ` [RESEND PATCH v2 03/15] ASoC: qcom: qdsp6: Add common qdsp6 helper functions srinivas.kandagatla
2017-12-14 17:33   ` srinivas.kandagatla at linaro.org
2017-12-14 17:33   ` srinivas.kandagatla
2018-01-02  0:19   ` Bjorn Andersson
2018-01-02  0:19     ` Bjorn Andersson
2018-01-02  0:19     ` Bjorn Andersson
2018-01-03 16:26     ` Srinivas Kandagatla
2018-01-03 16:26       ` Srinivas Kandagatla
2017-12-14 17:33 ` [RESEND PATCH v2 04/15] ASoC: qcom: qdsp6: Add support to Q6AFE srinivas.kandagatla
2017-12-14 17:33   ` srinivas.kandagatla at linaro.org
2017-12-14 17:33   ` srinivas.kandagatla
2018-01-02  0:45   ` Bjorn Andersson
2018-01-02  0:45     ` Bjorn Andersson
2018-01-02  0:45     ` Bjorn Andersson
2018-01-03 16:26     ` Srinivas Kandagatla
2018-01-03 16:26       ` Srinivas Kandagatla
2017-12-14 17:33 ` [RESEND PATCH v2 05/15] ASoC: qcom: qdsp6: Add support to Q6ADM srinivas.kandagatla
2017-12-14 17:33   ` srinivas.kandagatla at linaro.org
     [not found]   ` <20171214173402.19074-6-srinivas.kandagatla-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2018-01-02  1:50     ` Bjorn Andersson
2018-01-02  1:50       ` Bjorn Andersson
2018-01-02  1:50       ` Bjorn Andersson
2018-01-03 16:26       ` Srinivas Kandagatla
2018-01-03 16:26         ` Srinivas Kandagatla
2017-12-14 17:33 ` [RESEND PATCH v2 06/15] ASoC: qcom: qdsp6: Add support to Q6ASM srinivas.kandagatla
2017-12-14 17:33   ` srinivas.kandagatla at linaro.org
2017-12-14 17:33   ` srinivas.kandagatla
     [not found]   ` <20171214173402.19074-7-srinivas.kandagatla-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2018-01-02  4:43     ` Bjorn Andersson
2018-01-02  4:43       ` Bjorn Andersson
2018-01-02  4:43       ` Bjorn Andersson
2018-01-03 16:26       ` Srinivas Kandagatla
2018-01-03 16:26         ` Srinivas Kandagatla
2017-12-14 17:33 ` [RESEND PATCH v2 08/15] ASoC: qcom: q6asm: add support to audio stream apis srinivas.kandagatla
2017-12-14 17:33   ` srinivas.kandagatla at linaro.org
2017-12-14 17:33   ` srinivas.kandagatla
2018-01-02 20:08   ` Bjorn Andersson
2018-01-02 20:08     ` Bjorn Andersson
2018-01-03 16:26     ` Srinivas Kandagatla
2018-01-03 16:26       ` Srinivas Kandagatla
2018-01-03 16:26       ` Srinivas Kandagatla
2018-01-13  8:42   ` Rohit Kumar
2018-01-13  8:42     ` [alsa-devel] " Rohit Kumar
2018-01-13  8:42     ` Rohit Kumar
2017-12-14 17:33 ` [RESEND PATCH v2 09/15] ASoC: qcom: qdsp6: Add support to Q6CORE srinivas.kandagatla
2017-12-14 17:33   ` srinivas.kandagatla at linaro.org
2017-12-14 17:33   ` srinivas.kandagatla
2018-01-02 22:15   ` Bjorn Andersson
2018-01-02 22:15     ` Bjorn Andersson
2018-01-03 16:27     ` Srinivas Kandagatla
2018-01-03 16:27       ` Srinivas Kandagatla
2018-02-07 12:15   ` [alsa-devel] " Rohit Kumar
2018-02-07 12:15     ` Rohit Kumar
2017-12-14 17:33 ` [RESEND PATCH v2 10/15] ASoC: qcom: qdsp6: Add support to q6routing driver srinivas.kandagatla
2017-12-14 17:33   ` srinivas.kandagatla at linaro.org
2018-01-02 23:00   ` Bjorn Andersson
2018-01-02 23:00     ` Bjorn Andersson
2018-01-02 23:00     ` Bjorn Andersson
2018-01-03 16:27     ` Srinivas Kandagatla
2018-01-03 16:27       ` Srinivas Kandagatla
2018-01-03 16:27       ` Srinivas Kandagatla
2017-12-14 17:33 ` [RESEND PATCH v2 11/15] ASoC: qcom: qdsp6: Add support to q6afe dai driver srinivas.kandagatla
2017-12-14 17:33   ` srinivas.kandagatla at linaro.org
     [not found]   ` <20171214173402.19074-12-srinivas.kandagatla-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2018-01-02 23:28     ` Bjorn Andersson
2018-01-02 23:28       ` Bjorn Andersson
2018-01-02 23:28       ` Bjorn Andersson
2018-01-03 16:27       ` Srinivas Kandagatla
2018-01-03 16:27         ` Srinivas Kandagatla
2018-01-03 16:27         ` Srinivas Kandagatla
2018-02-07 11:34   ` Rohit Kumar
2018-02-07 11:34     ` [alsa-devel] " Rohit Kumar
2018-02-07 11:34     ` Rohit Kumar
2018-02-07 11:40     ` Srinivas Kandagatla
2018-02-07 11:40       ` Srinivas Kandagatla
2017-12-14 17:33 ` [RESEND PATCH v2 12/15] ASoC: qcom: qdsp6: Add support to q6asm " srinivas.kandagatla
2017-12-14 17:33   ` srinivas.kandagatla at linaro.org
2018-01-03  0:03   ` Bjorn Andersson
2018-01-03  0:03     ` Bjorn Andersson
2018-01-03 16:27     ` Srinivas Kandagatla
2018-01-03 16:27       ` Srinivas Kandagatla
2018-01-13  8:45   ` [alsa-devel] " Rohit Kumar
2018-01-13  8:45     ` Rohit Kumar
     [not found] ` <20171214173402.19074-1-srinivas.kandagatla-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2017-12-14 17:33   ` [RESEND PATCH v2 07/15] ASoC: qcom: q6asm: Add support to memory map and unmap srinivas.kandagatla-QSEj5FYQhm4dnm+yROfE0A
2017-12-14 17:33     ` srinivas.kandagatla at linaro.org
2017-12-14 17:33     ` srinivas.kandagatla
2018-01-02  5:48     ` Bjorn Andersson
2018-01-02  5:48       ` Bjorn Andersson
2018-01-03 16:26       ` Srinivas Kandagatla
2018-01-03 16:26         ` Srinivas Kandagatla
     [not found]         ` <4d1d17df-71a4-2896-29c1-9d033a2f3711-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2018-01-03 19:39           ` Bjorn Andersson
2018-01-03 19:39             ` Bjorn Andersson
2018-01-03 19:39             ` Bjorn Andersson
2017-12-14 17:34   ` [RESEND PATCH v2 13/15] dt-bindings: sound: qcom: Add devicetree bindings for apq8096 srinivas.kandagatla-QSEj5FYQhm4dnm+yROfE0A
2017-12-14 17:34     ` srinivas.kandagatla at linaro.org
2017-12-14 17:34     ` srinivas.kandagatla
2017-12-16 17:44     ` Rob Herring
2017-12-16 17:44       ` Rob Herring
2017-12-18  9:49       ` Srinivas Kandagatla
2017-12-18  9:49         ` Srinivas Kandagatla
2017-12-18  9:49         ` Srinivas Kandagatla
2018-01-03  0:28     ` Bjorn Andersson
2018-01-03  0:28       ` Bjorn Andersson
2018-01-03  0:28       ` Bjorn Andersson
2018-01-03 16:27       ` Srinivas Kandagatla
2018-01-03 16:27         ` Srinivas Kandagatla
     [not found]         ` <787ecdc5-66d8-23ee-7136-2a8759c86536-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2018-01-03 19:49           ` Bjorn Andersson
2018-01-03 19:49             ` Bjorn Andersson
2018-01-03 19:49             ` Bjorn Andersson
2017-12-14 17:34   ` [RESEND PATCH v2 14/15] ASoC: qcom: apq8096: Add db820c machine driver srinivas.kandagatla-QSEj5FYQhm4dnm+yROfE0A
2017-12-14 17:34     ` srinivas.kandagatla at linaro.org
2017-12-14 17:34     ` srinivas.kandagatla
2018-01-03  0:16     ` Bjorn Andersson
2018-01-03  0:16       ` Bjorn Andersson
2018-01-03 16:27       ` Srinivas Kandagatla
2018-01-03 16:27         ` Srinivas Kandagatla
2018-01-03 20:04         ` Bjorn Andersson
2018-01-03 20:04           ` Bjorn Andersson
2018-01-03 20:04           ` Bjorn Andersson
2018-01-03 17:20     ` Stephen Boyd
2018-01-03 17:20       ` Stephen Boyd
2018-01-03 18:36       ` Srinivas Kandagatla
2018-01-03 18:36         ` Srinivas Kandagatla
2018-01-03 19:41         ` Stephen Boyd
2018-01-03 19:41           ` Stephen Boyd
2018-01-03 19:41           ` Stephen Boyd
2018-01-04  9:25           ` Srinivas Kandagatla
2018-01-04  9:25             ` Srinivas Kandagatla
2018-01-04 12:02       ` Mark Brown
2018-01-04 12:02         ` Mark Brown
2018-01-04 12:02         ` Mark Brown
2018-01-04 13:44         ` Srinivas Kandagatla
2018-01-04 13:44           ` Srinivas Kandagatla
2018-01-04 14:03           ` Mark Brown
2018-01-04 14:03             ` Mark Brown
2018-01-04 14:03             ` Mark Brown
2017-12-14 17:34 ` [RESEND PATCH v2 15/15] arm64: dts: msm8996: db820c: Add sound card support srinivas.kandagatla
2017-12-14 17:34   ` srinivas.kandagatla at linaro.org
     [not found]   ` <20171214173402.19074-16-srinivas.kandagatla-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2018-01-03  0:22     ` Bjorn Andersson
2018-01-03  0:22       ` Bjorn Andersson
2018-01-03  0:22       ` Bjorn Andersson
2018-01-03 16:27       ` Srinivas Kandagatla
2018-01-03 16:27         ` Srinivas Kandagatla
2018-01-03 20:01         ` Bjorn Andersson
2018-01-03 20:01           ` Bjorn Andersson
2018-01-03 20:01           ` Bjorn Andersson

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.