Commit Graph

52 Commits

Author SHA1 Message Date
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
Liam Girdwood 19e3240ec7 topology: Add duplex support to 24 bit volume passthrough
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-12-11 22:04:19 +00:00
Liam Girdwood e76aeeb7e9 topology: modify passthrough volume playback for duplex operation
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-12-11 22:03:50 +00:00
Liam Girdwood e094d38e95 topology: Add passthrough volume capture pipe
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-12-11 22:03:24 +00:00
Liam Girdwood 796989d774 topology: Add duplex support to test passthrough pipe
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-12-11 22:02:42 +00:00
Liam Girdwood 83b1704555 topology: Modify passthrough playback pipe for duplex operation
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-12-11 22:00:51 +00:00
Liam Girdwood 475fbdc01e topology: Add passthrough capture pipe
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-12-11 22:00:18 +00:00
Liam Girdwood 6dbbac5d13 topology: remove unused secondary media pcm
Secondary PCM not used atm for 1.0 release so temporarily remove from standard
topologies.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-12-07 21:18:15 +00:00
Pierre-Louis Bossart bfe32ee87c soft: topology: fix cht.m4
Not sure why we need these files, but the cht definitions are not
aligned with the others. Fix.

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
2017-12-07 10:59:46 +00:00
Pierre-Louis Bossart 627e52bd67 soft: topology: add 16 and 24 bit passthrough for nocodec
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
2017-12-07 10:59:46 +00:00
Pierre-Louis Bossart cd988c514d topology: add files for SSP2-Codec machine drivers
At some point we should have a better way of relying on common parts but
for now add a passthrough shortcut directly usable with machine drivers

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
2017-12-07 10:59:46 +00:00
Pierre-Louis Bossart d72c06143e topology: add support for Dialog, Realtek and Maxim codecs
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
2017-12-07 10:59:46 +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 f3b486537d topology: add test pass through pipe for 16bit 48kHz on SSP2
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-12-05 16:31:49 +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
Liam Girdwood d3ac267d00 topology: fix capture pipeline ID for SSP DAI
Capture pipeline for SSP DAI should be 2.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-09-23 23:10:00 +01:00
Pierre-Louis Bossart 086c634817 topology: indent reef-*.m4 files, fix typos
Align parameters on different lines to allow for easier visual
comparison and direct mapping with comments in build.m4

Also fix typo in comments s/priorty/priority/g

No functional change

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
2017-09-14 13:52:31 +01:00
Pierre-Louis Bossart 006fe4ef30 topology: test: fix passthrough 24bit-48k-ssp2
format was missing, not sure how this ever worked.

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
2017-09-14 13:52:31 +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 81b02a796f topology: SRC testing passthrough pipeline.
The testing pipline for 24 bit SRC 48kHz output.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-09-11 16:38:14 +01:00
Liam Girdwood 530acaf46a topology: Add test SRC passthrough pipeline
Add a testing SRC passthrough pipeline.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-09-11 16:12:10 +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 d627f9e135 move test files 2017-09-11 14:53:10 +01:00
Liam Girdwood 19606eb2fc topology: Add support for 32bit data to playback and capture PCMs
Add S32_LE data support to the PCMs

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-09-08 12:51:25 +01:00
Liam Girdwood 08ccf3380b topology: SRC: Use 4ms for topology scheduling and increase buffers
SRC should be scheduled on at least 4ms tick. Increase buffers to
deal with 2 times output rate.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-09-07 14:25:18 +01:00
Liam Girdwood 5f53e40c52 topology: byt-rt5640: Fix stream name for BE DAI link
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-09-04 21:03:44 +01:00
Liam Girdwood 6cb0fd2806 topology: src: fix src config data by adding ""
SRC config data was missing "". Fixed.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-09-03 22:15:59 +01:00
Liam Girdwood ea3ff83bdc topology: media: fix media min period size to align with 1ms granularity
Make sure media buffers can align min period size on 1ms granularity.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-09-03 22:15:59 +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 5ca8e8d39c topology: Remove second SRC from BYT/CHT default topologies
SRC in default full rate and high quality configuration is quite large.
free up some memory on BYT and CHT by using only one SRC.

TODO: Provide the SRC with configuration data for supported rates and
quality in order to significantly reduce it's footprint.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-08-24 21:52:00 +01:00
Liam Girdwood da9108adff topology: test: Add new test topologies to help with component debug
Add a simple passthrough and a passthrough with volume.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-08-24 21:49:08 +01:00
Liam Girdwood c69a7516ef topology: Add simple playback passthrough pipeline with volume.
Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-08-21 20:29:01 +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 0a08a62e05 topology: pipelines: give more headroom for buffer size refinement
Give the ALSA HW refinement code more headroom for buffer calculations
to provide more buffering options.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-08-16 20:34:01 +01:00
Liam Girdwood 8083e91a99 topology: Add machine specific update for buffer and scheduling tokens
Allow machines to specify scheduling config in pipeline topologies.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-08-09 15:01:41 +01:00
Liam Girdwood c78d832441 topology: pipeline: Update pipelines to use new tokens
Update the pipelines to use the new buffer and scheduling tokens.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-08-09 15:01:41 +01:00
Liam Girdwood 85ed032295 topology: dsp: Add scheduling tokens to DSP platform files.
Add initial scheduling platform scheduling. TODO: fine tune the MIPS

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-08-09 15:01:41 +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 e50cccdae3 topology: Add token support for PCMs and components buffers.
Add topology tokens for PCM and buffer configuration.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-08-09 15:01:41 +01:00
Liam Girdwood c52d42685d topology: Add build support for topology files.
Add support to build topology text files into binary files understood
by the drivers. This is a two stage build, the first stage is to
pre-process the files with M4 into regular alsa-conf format and the second
stage is to compile with the alsa topology compiler.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-07-06 16:52:14 +01:00
Liam Girdwood dd08ed7a19 topology: Add machine specific topology configurations.
Add some initial machine specific topology configurations that define
some simple pipelines for certain machines.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-07-06 16:49:37 +01:00
Liam Girdwood e52b9dd37a topology: Add initial TLV library.
Add initial TLV library that can be included and re-used by pipelines.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
2017-07-06 16:48:06 +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