Commit Graph

257 Commits

Author SHA1 Message Date
Liam Girdwood 722a24ab2e
Merge pull request #43 from ranj063/sectionpcm
[RFC] Changes to SectionPCM macros
2018-07-30 11:46:08 +01:00
Ranjani Sridharan dc10876c20 topology: changes to SectionPCM macros
This patch addresses the following:

1. Move PCM_PLAYBACK_ADD to pcm.m4
The macro was in the wrong m4 file (buffer.m4)

2. Remove pipeline_id argument and "index" from SectionPCM

"index" is not a member of struct snd_soc_tplg_pcm. So this
information is not used in the kernel at all.
Secondly, the PCM ID could be associated with more than
one pipeline especially in the case of DUPLEX PCM's. So better
to remove it to avoid ambiguities.

3. Remove dai_id

This dai_id is the ID given to the CPU DAI when the FE DAI link
is created. In the case of SOF, we should use an linearly increasing
unique ID for CPU DAI ID's. If this argument is omitted, the kernel
automatially assignes an ID based on the component->num_dai
which is linearly incremented every time a new DAI link is added.

4. Finally update users to align with the new definitions.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-07-25 21:24:20 -07:00
Liam Girdwood debaf8f889
Merge pull request #33 from ranj063/apl-nocodec
topology: add dmic pipeline to apl nocodec topology
2018-07-25 20:16:37 +01:00
Ranjani Sridharan f08c93721d topology: replace PIPELINE_PCM_DAI_ADD with PIPELINE_PCM_ADD
Avoid duplicating dai_add in sof-apl-nocodec topology.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-07-24 22:42:56 -07:00
Ranjani Sridharan 27d3e14bdf topology: add comments to sof-apl-nocodec m4 file
This makes it easier to look up the macro definitions.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-07-24 09:19:21 -07:00
Ranjani Sridharan 2187702ee2 topology: add dmic pipeline to apl nocodec topology
Add DMIC capture pipeline for DMIC01 to the apl nocodec topology.
DMIC16k to be added later.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-07-24 09:19:21 -07:00
Liam Girdwood 48de25287e
Merge pull request #42 from ranj063/dai_id
topology: fix BE DAI id to be set to ID (not index)
2018-07-24 10:02:10 +01:00
Liam Girdwood d542a6eff6
Merge pull request #40 from xiulipan/daiindex
dai index alignment
2018-07-24 10:00:46 +01:00
Liam Girdwood df1314b5d8
Merge pull request #41 from plbossart/fix/3dd17dc0
topology: fix Makefile.am
2018-07-24 09:57:24 +01:00
Ranjani Sridharan c7adc3dae6 topology: fix BE DAI id to be set to ID (not index)
Previously it was set to be the dai index which works if there's
only one type of BE DAI's.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-07-23 19:49:34 -07:00
Pierre-Louis Bossart eecc7f6665 topology: fix Makefile.am
copy/paste mistake

Fixes: 3dd17dc0 ('dist: fix make dist for topology M4')
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
2018-07-23 11:43:32 -05:00
Pan Xiuli 3d903b5e3f topology: Add dai index in DAI SectionBE
DAI_TYPE and DAI_INDEX are both needed to get the dai in FW, add
DAI_INDEX in SectionBE to make sure we can handle multiple type dais.

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2018-07-23 16:28:35 +08:00
Liam Girdwood a25f4b0b02
Merge pull request #36 from keqiaozhang/modules
kmod_scripts: add rt274 and tdf8532 support
2018-07-19 14:47:06 +01:00
Zhang Keqiao e08ea66bd1 kmod_scripts: add rt274 and tdf8532 support
Signed-off-by: Zhang Keqiao <keqiao.zhang@linux.intel.com>
2018-07-19 21:20:55 +08:00
Liam Girdwood 942caa30b1
Merge pull request #35 from keqiaozhang/makedistfix
dist: fix make dist for topology M4
2018-07-19 12:52:31 +01:00
Zhang Keqiao 3dd17dc01d dist: fix make dist for topology M4
Signed-off-by: Zhang Keqiao <keqiao.zhang@linux.intel.com>
2018-07-19 13:39:45 +08:00
Liam Girdwood 02a9995c99
Merge pull request #32 from plbossart/debug/apl-nocodec
topology: sof-apl-nocodec: enable all 6 SSPs
2018-07-18 09:07:37 +01:00
Pierre-Louis Bossart 812c15cb66 topology: sof-apl-nocodec: enable all 6 SSPs
For some reason parts of the topology were commented out.  Make sure
all 6 SSPs are enabled.

Tested on Up2 with a LogicPro-based check on SSP5 (only interface
accessive on the HAT connector)

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
2018-07-17 17:25:16 -05:00
Liam Girdwood 576d15b9b4
Merge pull request #26 from RanderWang/icl
tplg: add nocodec topology for icelake
2018-07-17 11:42:53 +01:00
Liam Girdwood 8555c3b18d
Merge pull request #30 from plbossart/debug/modules
kmod_scripts: clean-up and add pcm512x support
2018-07-17 11:29:37 +01:00
Pierre-Louis Bossart 446e415f6a kmod_scripts: clean-up and add pcm512x support
Update module names, only unload what is loaded and add pcm512x
support for Up^2 board.

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
2018-07-16 16:37:18 -05:00
Rander Wang 6ba607461d tplg: add nocodec topology for icelake
Signed-off-by: Rander Wang <rander.wang@linux.intel.com>
2018-07-16 09:59:02 +08:00
Pierre Bossart 2abbfc0910
Merge pull request #28 from plbossart/debug/pcm512x
topology: fix sof-apl-pcm512x
2018-07-13 13:28:28 -05:00
Pierre-Louis Bossart 4d1b3d15b6 topology: fix sof-apl-pcm512x
Remove DMIC support to avoid topology load fail,
Remove capture (not supported by PCM512x codec)
Simplify structure using PCM_PIPELINE_ADD instead of PCM_PIPELINE_DAI_ADD
Enable 24-bit output
Enable up to 32-bit PCM (tested with S16_LE and S32_LE)

Tested on Up2, no issues detected.

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
2018-07-13 13:14:50 -05:00
Liam Girdwood 47339d2302
Merge pull request #22 from keqiaozhang/tplgfix
topology: fix id for sof_cnl_rt274 topology
2018-07-10 22:25:39 +01:00
Zhang Keqiao e55cd317a2 topology: fix id for sof_cnl_rt274 topology
Codec SSP id doesn't match with machine driver, so
change the id to 1 to fix the topology loading issue.

Signed-off-by: Zhang Keqiao <keqiao.zhang@linux.intel.com>
2018-07-10 10:47:14 +08:00
Liam Girdwood 764f9536cd
Merge pull request #20 from ranj063/topology/glk
topology: add multi-stream topology for GLK
2018-07-09 23:25:51 +01:00
Ranjani Sridharan 591a07d02d topology: add multi-stream topology for GLK
Add a multi-stream topology for GLK with speaker on SSP1, headset on
SSP2 and DMIC. Only playback pipelines on SSP1/2 for now. Capture
pipelines to be added later.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2018-07-07 23:08:50 -07:00
Liam Girdwood ff8eb10b18
Merge pull request #19 from xiulipan/tplgfix
topology fix for UP2
2018-07-06 11:54:20 +01:00
Pan Xiuli 794cf7a707 topology: fix id for sof_apl_pcm512x topology
SSP5 id should be kept to 0 and new added DMIC goes to 1 to keep old
machine driver work with both old topology and this topology.

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2018-07-06 17:54:51 +08:00
Pan Xiuli dfe7fa9196 topology: test: set id to 0 for codec topology
For nocodec topology, we need the id to be same with SSP index since
all SSP ports are enabled in nocodec. Codec machine drivers always have
id to 0.

Signed-off-by: Pan Xiuli <xiuli.pan@linux.intel.com>
2018-07-06 17:54:51 +08:00
Liam Girdwood 600e2692bd
Merge pull request #18 from RanderWang/master
SOFT: fix this topology failed to be loaded
2018-07-04 13:20:15 +01:00
Rander Wang fa2e98a118 SOFT: fix this topology failed to be loaded
Set dai id number according to NoCodec-id

Signed-off-by: Rander Wang <rander.wang@linux.intel.com>
2018-07-04 14:05:45 +08:00
Liam Girdwood 629d2a6bf1
Merge pull request #17 from singalsu/topic/fix_src_test_case_fail
SOFT: Improve audio test synchronization code
2018-07-02 10:33:14 +01:00
Seppo Ingalsuo 2cc0d1f9c6 SOFT: Improve audio test synchronization code
The audio tests signals contain a start and end marker to extract the
test output to analyze from in-between the markers.

This patch fixes a fail in SRC tests that was caused by incorrect
synchronization to output data. The chirp upper frequency is limited
to 0.99 x Nyquist frequency since the Nyquist frequency in the end
aliased and caused a visible artefact to spectral plot and it triggered
a resampler filter impulse response that had some correlation with
start/end marker chirps. The cosine chirp initialization to start from
90 degrees (zero PCM code instead of max.) also cleaned the start impulse
and improved the look of spectrogram plot.

The syncronization was limited to seek from one measured channel only. The
sync finder also didn't handle properly multi-channel input.

The output file start marker scan length was reduced to be
idle+marker length. And the scan time for end was reduced to be
2xidle+marker length

Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
2018-06-29 17:13:22 +03:00
Liam Girdwood 9aa6193795
Merge pull request #12 from zhigang-wu/master
ssp2 should be 8-channel
2018-06-29 14:29:52 +01:00
Liam Girdwood 2c786e9392
Merge pull request #16 from keyonjie/master
Revert "topology: dai: correct default_hw_conf_id"
2018-06-29 14:27:52 +01:00
Keyon Jie b5abe7194b topology: initial topology file for UP^2
Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
2018-06-29 18:38:12 +08:00
Keyon Jie 6da473ebab topology: sof-apl-nocodec: fix a comment typo
Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
2018-06-29 18:06:31 +08:00
Keyon Jie f359214717 Revert "topology: dai: correct default_hw_conf_id"
This reverts commit 229da95e0d which call
regression:
https://github.com/thesofproject/soft/issues/15

Default_hw_conf_id is id, not index of array, revert to fix it.

Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
2018-06-29 15:47:28 +08:00
Wu Zhigang 707d6d6a5c topology: reorder the ssp setting by increasing order
reorder the ssp setting according on the ssp port number
from ssp0~ssp5. make it more clear.

Signed-off-by: Wu Zhigang <zhigang.wu@linux.intel.com>
2018-06-29 09:08:24 +08:00
Liam Girdwood 38399caeb5
Merge pull request #14 from singalsu/topic/fix_dmic_test_capture_topologies_v1
Topic/fix dmic test capture topologies v1
2018-06-28 14:06:59 +01:00
Seppo Ingalsuo 17f5a08d2e SOFT: Increase test capture pipeline max. channels count to 4
The 4ch DMIC capture test topologies can't work without this change to
pipeline.

Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
2018-06-28 14:39:36 +03:00
Seppo Ingalsuo 3540310eea SOFT: Extend PCM parameters range in passtrough capture pipelines for DMIC
This patch extends the allowed sample rate range to 8 - 192 kHz, and
channels count to 1 - 16. Previously only 48 kHz and 2 - 4 channels was
allowed.

Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
2018-06-28 13:26:11 +03:00
Wu Zhigang 254013aa94 topology: ssp2 should be 8 channels
this is typo error. ssp2 should be 8-channel

Signed-off-by: Wu Zhigang <zhigang.wu@linux.intel.com>
2018-06-28 14:13:39 +08:00
Liam Girdwood dfc0f67194
Merge pull request #10 from singalsu/topic/fix_src_playback_pipe_buffers_v1
SOFT: Increase SRC playback topology buffer size
2018-06-27 19:54:51 +01:00
Liam Girdwood 52b107e3c1
Merge pull request #8 from singalsu/topic/fix_src_tests_proposal_v1
SOFT: Fix the topology file name in SRC test topology lookup
2018-06-27 15:18:19 +01:00
Seppo Ingalsuo dc0d9e028e SOFT: Increase SRC playback topology buffer size
This patch increases the SRC source buffer to contain 5 periods of data
(measured for 1 ms @ 48 kHz ). It fixes the issue in 176.4 kHz to 48 kHz
playback conversion that the pipeline freezes with insufficient available
data in source buffer for SRC to convert and too little free in buffer
for host to fill another 48 frames.

176.4 kHz playback is currently the largest buffer size consumer due
to non-steady in/out rate. The higher rate conversion 192 kHz to 48 kHz
can operate with smaller size buffer due to steady in/out rate.

Note: This has been only simulated in the host test bench since SRC
playback does not run currently in real devices due to another issue.
However since buffers simulation is accurate this should be a real issue.

Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
2018-06-27 16:44:43 +03:00
Seppo Ingalsuo 934a3300d6 SOFT: Fix the topology file name in SRC test topology lookup
The topology files naming has been updated to include mclk-N so it
needs to be added here as well for the script src_run.sh to work.

Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
2018-06-27 15:43:00 +03:00
Liam Girdwood 905be3ac65
Merge pull request #7 from singalsu/topic/add_src_tests_proposal_v1
Topic/add src tests proposal v1
2018-06-27 13:09:29 +01:00