Commit Graph

43 Commits

Author SHA1 Message Date
Ranjani Sridharan bd7dc88231 topology: remove DMAC ID/DMAC_CHANNEL from PIPELINE/PCM/DAI definitions
The firmware no longer uses the DMAC ID and channel info from topology.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-06-13 08:28:35 +01:00
Ranjani Sridharan 082f9714a9 topology: add DMIC config definition to DAI config
This patch adds the DMIC config definition and the DMIC
config entry in DAI config.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-05-31 21:21:38 +01:00
Ranjani Sridharan 56b8316e2a topology: separate ssp params from dai common params
This patch makes changes to DAI config in topology to separate out
SSP specific params from common params in preparation for other
DAI types coming soon.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-05-31 21:21:38 +01:00
Keyon Jie ed471edb8f topology: dai: add link_id for dai_link matching in DAI_CONFIG
This is used for the matching with snd_soc_dai_link.id in BE dai_links.

Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
2018-05-31 16:48:45 +01:00
Keyon Jie 2c31bbdc20 topology: change virtual widget types to non-DSP ones
This means they won't be sent to firmware for components creation.

Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
2018-05-24 12:31:19 +02:00
Rander Wang 35420bec93 topology: add virtual dapm route supported in topology file
To reuse some machine drivers in Linux kernel without hacking
dapm route info, some unsupported routes and widgets could be
added in toplogy file.

Signed-off-by: Rander Wang <rander.wang@linux.intel.com>
2018-05-18 11:31:48 +01:00
Liam Girdwood 4b8d6b5c60 dist: fix make dist for topology M4
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2018-04-05 11:22:05 +01:00
Keyon Jie 30aaefaea0 topology: pcm: add pipeline_id for stream name to avoid duplicate
Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
2018-03-28 14:35:38 +01:00
Keyon Jie 73a454544c topology: append pipeline id to PGA and control mixer
Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
2018-03-28 14:35:38 +01:00
Pan Xiuli 277b7a011a topology: utils: add get format name helper function
We may need to get format name from some format short name.

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2018-03-22 12:35:03 +00:00
Liam Girdwood cc91c73aa3 topology: pcm: Fix PCM ID for topologies > 1 PCM
PCM number was not being preserved and was always zero. This would
overwrite previous PCMs and cause the FW to return invalid PCM error
messages.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2018-03-16 17:18:20 +00:00
Liam Girdwood 8d9b8d51f9 topology: Add stream name to DAI widgets for binding to DAI links
DAI Widgets need bound to a DAI link to complete the DAPM graph. This is
only working atm as we are only using one DAI. Add stream name to DAI
widgets to be used by topology binder.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2018-03-13 20:35:42 +00:00
Ranjani Sridharan 3105de2481 topology: fix dai capture tokens and move buffer size macro definition
This patch fixes typo in dai capture tokens and moves te buffer size
macro definition to buffer.m4

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-03-06 21:46:03 +00:00
Ranjani Sridharan c95433636f topology: break up topology builder m4 files into per component macros
This patch break up the local.m4 and build.m4 topology builder includes
into per component m4 files

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-03-06 11:25:26 +00:00
Ranjani Sridharan a99283da77 topology: create m4 wrapper for Data section in pipeline definition
This patch adds a m4 wrapper for data section in pipeline definitions

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-03-06 11:13:19 +00:00
Ranjani Sridharan c529b32eae topology: create m4 wrapper for VendorTuples section in pipeline definition
This patch adds a m4 wrpper for Vendor Tuples sections
in pipeline definition

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-03-06 11:13:19 +00:00
Ranjani Sridharan 9d846ac85a topology: create m4 wrapper SectionPCMCapabilities
This patch adds a m4 wrpper for PCM Capabilities sections
in pipeline definition

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-03-06 11:13:19 +00:00
Ranjani Sridharan 625f2e1cc0 topology: create m4 wrapper for Graph section
This patch adds a m4 wrpper for Graph sections in pipeline definition

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-03-06 11:13:19 +00:00
Ranjani Sridharan ee8afc8064 topology: create m4 wrapper for mixer control section
This patch adds m4 wrapper for mixercontrol section in
pipeline definition

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-03-06 11:13:19 +00:00
Ranjani Sridharan 29dd4df5d1 topology: add kcontrol for tone component
This patch adds the changes to add kcontrols to the tone component

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-03-06 11:13:19 +00:00
Ranjani Sridharan da6d3eabb7 topology: make list loop more generic with formatting argument
This patch adds changes to make list loop more generic with format argument

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-03-06 11:13:19 +00:00
Liam Girdwood 5b8dfd1301 topology: stringify buffer caps.
Needs to be string for proper alsa-conf parsing.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2018-03-05 16:05:39 +00:00
Liam Girdwood e02f6910d1 topology: Add support for memory capabilities
Add support in topology to define different memory capabilities that can
be included by standard pipeline definitions to set platform specific
capabilities for buffers.

This patch allows memory capabilities to be defined for each platform and
included by all pipeline definitions.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2018-03-05 13:38:12 +00:00
Pan Xiuli f6924b1701 topology: m4: add default_hw_conf_id
Add default_hw_conf_id to set the default_hw_config_id value in
ASOC and then we can set the dai config.

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2018-02-13 09:23:07 +00:00
Ranjani Sridharan 09325e91fc topology: Allow multiple kcontrols for volume widget
This patch adds support for multiple kcontrols for the volume
widget and adds a mute switch kcontrol to the volume playback
pipeline.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-02-12 15:47:31 +00:00
Liam Girdwood 1f23137df9 rimage: build: Fix make dist and version.
make dist will now include the topology files.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2018-01-11 11:08:34 +00:00
Pan Xiuli c3bd862032 topology: m4: Add two macros for one direction PCM
We may need to generate capture only or playback only PCMs.
Add these macros to help generate them.

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2017-12-19 11:11:04 +00:00
Liam Girdwood 8b254b5f3d topology: AIF directions are codec centric wrt PCMs
Commit 0a1a9bbc492e4eb22173ed57c7f5499c8f106289 discovered a bug in
the direction of AIF widgets in relation to PCMs. AIF widgets are codec
centric in ASoC so topology must align.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-12-13 21:06:27 +00:00
Keyon Jie 88519eee73 topology: fix 2 typos for capture pipeline
1. Widget N_PCMC type should be "aif_in", not "aif_out".
2. Widget W_DAI_IN data should be "N_DAI_IN", not "N_DAI_OUT".

Signed-off-by: Xiuli Pan <xiuli.pan@intel.com>
Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
2017-12-13 21:06:27 +00:00
Pierre-Louis Bossart 31c4918ad5 topology: remove stream_name for all DAI definitions
stream_name is not used by any machine drivers, there is no point in
providing the information to topology layers

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
2017-12-07 10:59:46 +00:00
Pierre-Louis Bossart df8b473929 topology: remove stream_name parameter from DAI_CONFIG
This value is never set in machine drivers, no point in setting it
here

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
2017-12-07 10:59:46 +00:00
Liam Girdwood d774609c90 topology: Allows playback and capture pipelines to share same PCM
Add support so that different playback and capture pipelines can share
the same host PCM device.

Modify board configs to use PCM0 for playback and capture.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-10-02 15:28:24 +01:00
Pierre-Louis Bossart 924ac07233 topology: build: fix PIPELINE/DAI_ADD comments
Add a couple of missing parameters in comments, align them logically
to help the rest of us figure out what parameters mean.

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
2017-09-14 13:52:31 +01:00
Liam Girdwood 30d3d92928 topology: pipeline: Add flag to selcect either timer or IRQ scheduling
Add a flag to specify whether the pipeline processing work can be
scheduled via a timer or an IRQ source. IRQ scheduling will primarily be
used by pipelines that include a DAI.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-09-11 16:03:57 +01:00
Liam Girdwood 2b41652007 topology: Add support for DAI pipeline ID config
Allow topology to configure the pipeline ID of any DAI specific
pipeline instead of using 0.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-09-11 15:58:25 +01:00
Liam Girdwood 12b1907499 topology: src: fix W_SRC widget argument list order
Put format and data in correct order.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-09-03 22:15:58 +01:00
Liam Girdwood 1bed6ee95d topology: bind kcontrols to PGA widgets.
Add an parameter to bind TLV volume kcontrol to volume widget.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-08-31 23:51:20 +01:00
Liam Girdwood 811918df70 topology: Add format and scheduling info to DAI pipelines.
Some pipelines can be used to service DAIs before data is sent on to
other processing pipelines. Add scheduling and format info to DAI
pipelines.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-08-30 22:55:57 +01:00
Liam Girdwood 08adb55f0b topology: Include DAI format in pipeline definitions
Make sure we allow different DAI formats in pipelines.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-08-21 20:29:01 +01:00
Liam Girdwood 3d8e7478a4 topology: Add sample bits to DAI_CONFIG
Add a token for number of bits in a sample for DAI configs

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-08-21 20:29:01 +01:00
Liam Girdwood 2436d794a3 topology: dai: Fix DAI tokens to avoid naming colision
The wrong name is used for naming and may collide with the capture stream
on the same DAI.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-08-16 20:35:55 +01:00
Liam Girdwood 31d540e413 topology: builder: Add support pipeline scheduling to topology
Allow topology pipelines to define their scheduling.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-08-09 15:01:41 +01:00
Liam Girdwood a7a3bc4d57 topology: Add M4 topology pre-processor macros
Add initial macros to simplify the construction of topology components and
pipelines.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-07-06 16:43:33 +01:00