Commit Graph

257 Commits

Author SHA1 Message Date
Seppo Ingalsuo 1abae16a11 SOFT: Add various utility scripts for audio component tests
This patch provides the non-standard based utilities to help to execute
the tests.

Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
2018-06-27 13:50:49 +03:00
Seppo Ingalsuo a852b5341e SOFT: Add audio standards based objective performance measurements
This patch provides scripts to measure such performance as THD+N,
dynamic range, frequency response, gain, etc.

Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
2018-06-27 13:49:33 +03:00
Seppo Ingalsuo aa3e72400c SOFT: Add SRC component test scripts
This patch provides tests for sample rate converter (SRC) SOF component.
The tests are executed via the SOF host (x86) version test executable and
the SRC component library.

Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
2018-06-27 13:48:07 +03:00
Liam Girdwood f756455e90
Merge pull request #6 from ranj063/test_topology
Add more test topologies
2018-06-26 20:23:45 +01:00
Ranjani Sridharan ddbd2d655f topology: add more dmic test topologies
This patch modifies the test topology generator to add dmic topologies
with pre-defined PDM controller configurations, sample rates and
formats.

It also modifies the DMIC_CONFIG macro to get the number of
active pdm from the pdm config.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-06-26 11:42:27 -07:00
Ranjani Sridharan 82996c24a5 topology: add pre-defined PDM controller configs
Add some pre-defined PDM controller configs that sets the
number of active controllers and the corresponding
pdm tuples.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-06-26 11:41:23 -07:00
Ranjani Sridharan 71dff859e3 topology: add test topologies with mclk id 1
Add some test topologies with mclk id 1

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-06-26 11:18:09 -07:00
Liam Girdwood 75440af68a
Merge pull request #5 from keyonjie/master
multiple SSPs/BEs support for SOF--SOFT Part
2018-06-26 15:37:03 +01:00
Keyon Jie 9ac2e32099 topology: change BE name for NoCodec to support multiple SSPs/BEs
Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
2018-06-26 21:42:56 +08:00
Keyon Jie 553137d741 topology: sof-apl-nocodec: enable multiple SSP pipelines
Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
2018-06-26 21:37:27 +08:00
Keyon Jie 229da95e0d topology: dai: correct default_hw_conf_id
default_hw_conf_id was used by mistake, we should use index 0 of the hw
config array.

Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
2018-06-26 21:29:39 +08:00
Liam Girdwood 308cf3d140
Merge pull request #4 from ranj063/dai_changes
DAI updates - topology changes
2018-06-26 12:19:29 +01:00
Liam Girdwood 7b96948052
Merge pull request #2 from xiulipan/master
rmbox: add missing trace class to sync with firmware
2018-06-26 12:15:30 +01:00
Liam Girdwood e393b33619
Merge pull request #1 from ranj063/topic/tone
Tone related changes in topology
2018-06-26 12:12:42 +01:00
Ranjani Sridharan f73aa73978 topology: move dmic related macros to dmic.m4 in platform/intel
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-06-25 13:44:52 -07:00
Ranjani Sridharan f58a047278 topology: move ssp related macros to ssp.m4 in platform/common
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-06-25 13:44:52 -07:00
Ranjani Sridharan a835ff2ae9 topology: move platform m4 files from dsps directory to platform/intel
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-06-25 13:44:52 -07:00
Ranjani Sridharan 1adb92ab2e topology: dai: rename sample_bits macro to config_data
Rename SAMPLE_BITS macro to a more generic CONFIG_DATA macro for SSP
to also include the mclk id.

Also modify users of the macro with the new name.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-06-25 13:44:38 -07:00
Ranjani Sridharan 6d9ad7a505 tokens: move SAMPLE_BITS to ssp tokens
SAMPLE_BITS is SSP specific. So move it to be part of the
ssp tokens.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-06-24 23:00:49 -07:00
Pan Xiuli 0beda35193 rmbox: add missing trace class to sync with firmware
Add missing trace class to the rmbox to avoid unknow value message.

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2018-06-25 12:59:07 +08:00
Ranjani Sridharan e6140f8200 topology: add SAMPLE_RATE token for tone comp and define it in tone definition
Add SAMPLE_RATE token for tone comp.
Include it in tone definition and set it from the test pipeline definition.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-06-24 21:15:39 -07:00
Ranjani Sridharan c0172307ff topology: add new token for SSP MCLK ID
Some platforms might have more than one MCLK's exposed. Add a token
that will allow specifying the MCLK ID to be used in such cases.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-06-24 21:11:22 -07:00
Ranjani Sridharan 09148482f9 topology: add test tone pipelines for APL
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-06-24 00:29:05 -07:00
Ranjani Sridharan 41ef0529fc topology: use switch IO handler for tone switch
Use the bespoke switch IO handler in the driver for the tone switch kcontrol.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-06-24 00:28:55 -07:00
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
Wu Zhigang 2cc3ad2a92 topology: 8-channel should be supported
8 channels should be supported.

Signed-off-by: Wu Zhigang <zhigang.wu@linux.intel.com>
Suggested-by: Keyon Jie <yang.jie@linux.intel.com>
2018-06-11 12:11:16 +01:00
Wu Zhigang f85f5f8e38 topology: enable ssp2 for capture feature.
the ssp2 should be tdm8-32bit.

Signed-off-by: Wu Zhigang <zhigang.wu@linux.intel.com>
2018-06-11 12:11:16 +01:00
Seppo Ingalsuo b322168438 SOFT: Add SRC coefficients generate tool
This patch adds the scripts src_std_int32.m and src_tiny_int16.m those
were used to create the conversions matrices for the default and tiny
profiles. The scripts call the included src_generate function that
does the task with help from the filter design and coefficients
export utilities.

The quality and resources consumption of SRC can be customized with
this tool.

Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
2018-06-04 10:06:24 +01:00
Pan Xiuli 5a59eca380 topology: test: Fix tplb-build.sh when did no use XARGS
Miss TFILE when not using XARGS.

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2018-06-04 09:29:08 +01:00
Ranjani Sridharan 07d290c8ac topology: add DMIC dai support in test capture m4
Add support for adding DMIC config for DMIC DAI type.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-05-31 21:21:38 +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 d6e201c961 topology: scripts: add dmic test topology
This patch adds the dmic test case to the tplg generating script.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-05-31 21:21:38 +01:00
Ranjani Sridharan 1dcac3225e topology: make m4 filenames dai type agnostic
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-05-31 21:21:38 +01:00
Ranjani Sridharan a913f77e65 topology: add DMIC tokens
This patch introduces the DMIC specific config parameter tokens
in topology.

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
Ranjani Sridharan e77a8ef269 topology: scripts: changes to accommodate different DAI types
This patch makes the following changes to make way for handling
different DAI types in tplg build script:

1. Define the test DAI type while processing m4 files
2. DAI format and DAI port might be relevant for other types of DAI's.
So use generic TEST_DAI_PORT and TEST_DAI_FORMAT instead of
TEST_SSP_PORT TEST_SSP_FORMAT

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-05-31 21:21:38 +01:00
Ranjani Sridharan 21f523401e topology:scripts: fix tplg build script to compile last topology when using xargs
When using xargs, the last topology file while batch processing alsatplg
doesn't get compiled properly.

Also remove a stray ; in the script.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-05-31 21:21:31 +01:00
Keyon Jie 0876e73f31 Topology: sof-apl-tdf8532: enable all 6 SSPs and pipelines.
Todo: to confirm and refine settings for each SSP/dai.

Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
2018-05-31 16:55:58 +01:00
Keyon Jie 885ae37f49 topology: bxt: change to use dmac0 for capture
Otherwise, the channels may be used up when pipeline number > 8.

Todo: remove dmac definition from tplg, just allocate them inside
firmware.

Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
2018-05-31 16:55:58 +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
Ranjani Sridharan ed3f3aa94a topology: tone pipeline should be DAI driver and not timer driven
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-05-31 08:48:28 +01:00
Keyon Jie 7ee114d2ed topology: sof-apl-tdf8532: add virtual widgets and routes
Add virtual widgets and routes to make it aligned with machine driver.

Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
2018-05-24 12:31:19 +02: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
Ranjani Sridharan 28ab096452 topology: scripts: modify simple_test function to be generic and remove tone_test function
Make simple_test function generic by accepting the array of
test cases as an argument. The tone_test function can
be removed and replaced with the modified simple_test function
and passing the required test case to generate the tone
topology file.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-05-22 08:50:30 +01:00
Ranjani Sridharan 04691ffbe5 topology: add ssp tokens defined in kernel UAPI header
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-05-22 08:30:20 +01: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
Zhang Keqiao 86fe688a2b topology: test: add some passthrough topologies for CNL
Signed-off-by: Zhang Keqiao <keqiao.zhang@linux.intel.com>
2018-05-07 14:10:59 +01:00
Ranjani Sridharan d0f4aba934 topology: speed up topology build
Speed up topology with batch processing of m4 files

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-05-07 11:55:47 +01:00
Pierre-Louis Bossart 13b56fa604 topology: mirror alsa-lib definitions for mclk/bclk
ALSA-lib introduced new definitions to work around an logical
inversion for master/slave definitions. see e.g. commit 3778a30bb00
('ASoC: topology: Fix bclk and fsync inversion in
set_link_hw_format()')

Make sure clarifications are reflected in the topology files
bclk/fsync slave -> codec_slave
mclk slave -> codec_mclk_in

This patch requires the use of the latest alsa-lib git master (v1.1.6
does not contain the relevant patches).
This patch also requires an updated kernel.

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
2018-04-30 16:56:51 +01:00
Pierre-Louis Bossart b327539e98 kmod_scripts: handle nocodec machine driver
make sure it's removed

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
2018-04-14 13:19:14 +01:00