Commit Graph

1377 Commits

Author SHA1 Message Date
Jaska Uimonen 8380946137 topology1: test topology for tgl nocodec mux
Add test topology for muxing 2 pipelines into 1 with SSP dai and
capturing the result from loopback.

Signed-off-by: Jaska Uimonen <jaska.uimonen@intel.com>
2023-07-04 15:37:21 +01:00
MARUTHI MACHANI 388075ec82 topology1:amd: comments update
topology comments update

Signed-off-by: MARUTHI MACHANI <maruthi.machani@amd.com>
2023-07-04 15:18:52 +01:00
MARUTHI MACHANI 3fa5085a4e topology1:amd: topology changes to support virtual playback passthrough for mux
Topology changes to support virtual playback passthrough for mux

Signed-off-by: MARUTHI MACHANI <maruthi.machani@amd.com>
2023-07-04 15:18:52 +01:00
Bard Liao a6fa09cca7 Topology2: add sof-tgl-rt711-rt1308-rt715 topology
Add sof-tgl-rt711-rt1308-rt715 topology for topology2.

Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
2023-07-04 15:18:27 +01:00
Bard Liao 4fa2ad4261 Topology2: sdw-amp-generic: add 2nd amp feedback when SDW_AMP_FEEDBACK
is true

Currently, we add the 2nd sdw amp feedback unconditionally. It will lead
to an issue when aggregated apms don't support feedback function.

Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
2023-07-04 15:18:27 +01:00
Bard Liao cc3b75665f Topology2: hdmi: use macro to set HDMI BE name
HDMI BE name may not be iDispx.

Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
2023-07-04 15:13:56 +01:00
Ranjani Sridharan b1ce311540 topology2: pipelines: dai-copier-eqiir-module-copier-capture: Replace audio_format object
Use the input_audio_format/output_audio_format objects explicitly.
Also, add the 4ch audio format in the class definition as this is only
instantiated once in dmic-generic.conf and needs support for both
formats.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-07-04 15:10:35 +01:00
Ranjani Sridharan 511f680b02 topology2: pipelines: io-gateway: Replace audio_format object
Use the input_audio_format/output_audio_format objects explicitly.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-07-04 15:10:35 +01:00
Ranjani Sridharan 914b855d72 topology2: components: mixout: Replace audio_format object
Use the input_audio_format/output_audio_format objects explicitly.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-07-04 15:10:35 +01:00
Ranjani Sridharan 7ad6659b9e topology2: components: mixin: Replace audio_format object
Use the input_audio_format/output_audio_format objects explicitly.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-07-04 15:10:35 +01:00
Jyri Sarha 593563b69e topology2: cavs-mixin-mixout-efx-hda.conf: Uppercase IIR and FIR
Make these last IIR and FIR acronyms in the kcontrol names uppercase.

Signed-off-by: Jyri Sarha <jyri.sarha@linux.intel.com>
2023-07-03 16:13:37 +01:00
Jyri Sarha 50f5c8fbdc topology2: Rename remaining non mixer kcontrols to follow new naming scheme
Rename all remaining kcontrols to follow the new naming scheme that is
already used for all mixers.

This commit changes kcontrol names as follows:

cavs-nocodec.conf:
'smart_amp_init' -> 'Main Playback and Port0 smart_amp_init'

cavs-mixin-mixout-hda.conf:
'4 Main capture Iir Eq' -> 'Analog Capture IIR Eq'

dmic-generic.conf:
'DMIC0 capture Iir Eq' -> 'DMIC0 Capture IIR Eq'

sdw-jack-generic.conf:
'4 Main capture Iir Eq' -> 'Jack In Capture IIR Eq'

Signed-off-by: Jyri Sarha <jyri.sarha@linux.intel.com>
2023-06-30 13:24:56 +03:00
Jyri Sarha a3814c58b9 topology2: sdw-jack-generic.conf: Rename mixers
Rename mixers according to the new naming convention by referring to
the associated PCM name and the position in the topology. Create
defines for PCM names so the name is only in one place. Adds a define
for the capture PCM too. The commit also updates the PCM names while
adding the defines.

This produces following changes, on PCM names:
'Jack in' -> 'Jack In'
'Jack out' -> 'Jack Out'

and on mixer names:
'1 Playback Volume 0' -> 'Pre Mixer Jack Out Playback Volume'
'2 Main Playback Volume' -> 'Post Mixer Jack Out Playback Volume'

Signed-off-by: Jyri Sarha <jyri.sarha@linux.intel.com>
2023-06-28 17:17:15 +03:00
Jyri Sarha 2af91434b5 topology2: cavs-sdw-src-gain-mixin.conf: Rename mixers
Rename mixers according to the new naming convention by referring to
the associated PCM name and the position in the topology. Create
defines for PCM names so the name is only in one place. The commit
also updates the PCM names while adding the defines.

This produces following changes, on PCM names:
'Jack in' -> 'Jack In'
'Jack Out' -> 'Jack Out'

and on mixer names:
'Src Playback Volume' -> 'Pre Mixer Jack Out Playback Volume'
'Main Playback Volume' -> 'Post Mixer Jack Out Playback Volume'

Signed-off-by: Jyri Sarha <jyri.sarha@linux.intel.com>
2023-06-28 17:17:15 +03:00
Jyri Sarha bda1bcd5bc topology2: cavs-rt5682.conf: Rename mixers
Rename mixers according to the new naming convention by referring to
the associated PCM name and the position in the topology. Create defines
for PCM names so the name is only in one place.

This produces following changes:

'Playback Volume 1' -> 'Pre Mixer Headset Playback Volume'
'Playback Volume 3' -> 'Pre Mixer Speaker Playback Volume'
'Main Playback Volume 2' -> 'Post Mixer Headset Playback Volume'
'Main Playback Volume 4' -> 'Post Mixer Speaker Playback Volume'

Signed-off-by: Jyri Sarha <jyri.sarha@linux.intel.com>
2023-06-28 17:17:15 +03:00
Jyri Sarha 2cef521c36 topology2: cavs-nocodec-multicore.conf: Rename playback volumes
Rename SSP0, SSP1, and SSP2 playback volumes according to PCM names
they are connected to. Define the PCM names as variables so the name
can be changed in a single place.

This is how the change will look like:

'gain.1.1 Playback Volume 1' to
'gain.1.1 Pre Mixer Port0 Playback Volume'

'gain.14.1 Main Playback Volume 14' to
'gain.14.1 Post Mixer Port0 Playback Volume'

'gain.3.1 Playback Volume 3' to
'gain.3.1 Pre Mixer Port1 Playback Volume'

'gain.4.1 Main Playback Volume 4' to
'gain.4.1 Post Mixer Port1 Playback Volume'

'gain.5.1 Playback Volume 5' to
'gain.5.1 Pre Mixer Port2 Playback Volume'

'gain.6.1 Main Playback Volume 6' to
'gain.6.1 Post Mixer Port2 Playback Volume'

Signed-off-by: Jyri Sarha <jyri.sarha@linux.intel.com>
2023-06-28 12:33:10 +03:00
Jyri Sarha a0b1a391b8 topology2: cavs-mixin-mixout-efx-hda.conf: Rename Iir and Fir Eqs
Rename mixin and mixout EFX Analog Playback Eqs to follow the same
naming scheme as the mixers.

As a result of this commit Eqs are renamed in sof-hda-efx-generic.tplg
as follows:

'eqfir.2.1 2 Main playback Fir Eq' to
'eqfir.2.1 Post Mixer Analog Playback Fir Eq'

and

'eqiir.2.1 2 Main playback Iir Eq' to
'eqiir.2.1 Post Mixer Analog Playback Iir Eq'

Signed-off-by: Jyri Sarha <jyri.sarha@linux.intel.com>
2023-06-28 12:33:10 +03:00
Jyri Sarha ecff8a1d3d topology2: cavs-mixin-mixout-efx-hda.conf: Improve mixer names
Rename mixin and mixout EFX Analog Playback volumes. Rewrite the names
of the mixers to better reflect their position in the topology.

As a result of this commit mixers are renamed in sof-hda-efx-generic.tplg
as follows:

'gain.1.1 1 2nd Playback Volume' to 'gain.1.1 Pre Mixer Analog Playback Volume'

and

'gain.2.1 2 Main Playback Volume' to
'gain.2.1 Post Mixer Analog Playback Volume'

Signed-off-by: Jyri Sarha <jyri.sarha@linux.intel.com>
2023-06-28 12:33:10 +03:00
Uday M Bhat 3de4a6e5d7 topology2: cavs-sdw : Update BT offload SSP for MTL chromebook
For MTL chromebook, SSP 1 is used for BT offload with
cavs-sdw configuration

Co-developed-by: Yong Zhi <yong.zhi@intel.com>
Signed-off-by: Yong Zhi <yong.zhi@intel.com>
Co-developed-by: Jairaj Arava <jairaj.arava@intel.com>
Signed-off-by: Jairaj Arava <jairaj.arava@intel.com>
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Signed-off-by: Uday M Bhat <uday.m.bhat@intel.com>
2023-06-27 13:33:35 +03:00
Balamurugan C 81f582279c topology1: adl: add support for Nocodec amp and HDMI-in capture.
Adding support for the alderlake products which doesn't have no ssp
amplifier but need to support HDMI audio playback and HDMI-in capture
via I2S

Signed-off-by: Balamurugan C <balamurugan.c@intel.com>
2023-06-21 12:14:03 +03:00
Balamurugan C 310b10c055 topology1: tgl: add support for Nocodec amp and HDMI-in capture.
Adding support for the product which doesn't have no ssp amplifier
but need to support HDMI audio playback and HDMI-in capture via I2S.

Signed-off-by: Balamurugan C <balamurugan.c@intel.com>
2023-06-21 12:14:03 +03:00
Balamurugan C d0dbfd62ca topology1: add support for rt1308 ssp amp + HDMI-in capture.
Adding support for rt1308 ssp amplifier and HDMI-in capture via I2S.

Signed-off-by: Balamurugan C <balamurugan.c@intel.com>
2023-06-21 12:14:03 +03:00
Ranjani Sridharan 584e2f62e5 topology2: cavs-nocodec-multicore: Replace audio_format objects
Use the input_audio_format/output_audio_format objects instead.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-06-21 12:10:02 +03:00
Ranjani Sridharan 4a64defa94 topology2: cavs-rt5682: Replace audio_format objects
Use the input_audio_format/output_audio_format objects instead.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-06-21 12:10:02 +03:00
Ranjani Sridharan bdd3bf2409 topology2: cavs-nocodec-bt: Replace audio_format objects
Use the input_audio_format/output_audio_format objects instead.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-06-21 12:10:02 +03:00
Yong Zhi 83ff81984a topology2: deepbuffer-playback: increase default buffer_size_max
buffer_size_max of PCM cap for deepbuf is configured for 65536.
Quadruple the buffer_size/period_size to allow aplay to use larger
buffer size.

Signed-off-by: Yong Zhi <yong.zhi@intel.com>
2023-06-20 14:09:33 +03:00
Yong Zhi 77e3e92157 topology2: cavs-rt5682: Add 2ch DMIC topology
Rex SKU1 variant has only 2xDMIC enabled on PDM1, use 2xch
capture for power saving.

Signed-off-by: Yong Zhi <yong.zhi@intel.com>
2023-06-19 10:18:12 +03:00
Jaska Uimonen f0f5bddd7b topology2: fix dai index in nocodec multicore
Dai index in one copier is set to 1 even though it should be 0, thus
change it.

Signed-off-by: Jaska Uimonen <jaska.uimonen@intel.com>
2023-06-16 18:24:37 +03:00
Jaska Uimonen f5df5097c8 topology2: fix nhlt debug binary names
Some topologies have the same file name specified as nhlt debug output
so they will override others. Change the names to be unique.

Signed-off-by: Jaska Uimonen <jaska.uimonen@intel.com>
2023-06-16 18:24:37 +03:00
Ranjani Sridharan 75e8f4b63c topology2: cavs-nocodec: Introduce macros for PCM IDs
And fix the erroneous PCM ID for SSP0 capture.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-06-15 19:50:03 +03:00
Bard Liao f0b44b4854 Topology2: sdw-jack-generic: add 24 bit format support for sdw jack
Somehow s24_le format is missed.

Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
2023-06-15 16:35:03 +03:00
Yong Zhi b75a94bfd3 topology2: cavs-nocodec: run DMIC pipelines on core1
There is pinmux on MTL platform to optionally enable DMIC,
add this config to the build and run the pipeline on core 1.

Signed-off-by: Yong Zhi <yong.zhi@intel.com>
2023-06-15 11:10:45 +03:00
Ranjani Sridharan 561f4b036c topology2: sdw-jack-generic: Fix the number of input pins
This was missed earlier.

Fixes: f8ad12734d ("topology2: cavs-sdw: Add option for passthrough pipelines")
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-06-14 21:45:23 +03:00
Yong Zhi d3f8bdc304 topology2: add sof-mtl-cs42l42-l0-max98363-l2-4ch support
cs42l42 headset codec on link0 & 2xmax98363 on link 2.

Co-developed-by: Uday M Bhat <uday.m.bhat@intel.com>
Co-developed-by: Jairaj Arava <jairaj.arava@intel.com>
Signed-off-by: Yong Zhi <yong.zhi@intel.com>
2023-06-13 18:24:13 +03:00
Ranjani Sridharan 8d5e624d03 topology2: intel: hdmi-generic: Replace audio_format objects
Use the input_audio_format and output_audio_format objects instead.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-06-13 11:16:10 +03:00
Ranjani Sridharan 8cb7bf1baf topology2: cavs-mixin-mixout: Replace audio_format instance
Use the input_audio_format and output_audio_format objects instead
and fix the number of input/output formats to 1.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-06-13 11:16:10 +03:00
Bard Liao 8ef4d51e68 topology2: sdw-jack-generic: add SDW_JACK_CAPTURE_CH macro
Adding SDW_JACK_CAPTURE_CH macro to specify sdw jack channels.
The default value is 2.

Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
2023-06-12 10:12:36 +03:00
Bard Liao f6f57fe82b Topology2: sdw-jack-generic: add 1 ch format support
Some codecs like cs42l42 support 1 channel capture only.

Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
2023-06-12 10:12:36 +03:00
Mengdong Lin a5c0c49707 topology2: add development tplg to test playback with 2 cores
This is to allow CI to test a simple multicore playback case on
MTL/TGL/ADL: SSP0 playback on core 0 and SSP2 playback on core 1.

Capture uses core 0 only atm. More multicore usage will be
introduced later.

Signed-off-by: Mengdong Lin <mengdong.lin@intel.com>
2023-06-12 10:09:00 +03:00
Ranjani Sridharan 1da18c2caa topology2: cavs-sdw: Build passthrough LNL FPGA topology
With RT711 on link 0

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-06-07 18:17:20 +03:00
Ranjani Sridharan f8ad12734d topology2: cavs-sdw: Add option for passthrough pipelines
Add a compile time option to build SDW topologies with passthrough
pipelines.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-06-07 18:17:20 +03:00
Bard Liao 6863eda168 topology2: add sof-mtl-rt712-l0-rt1712-l3.tplg
For MTL + rt712

Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
2023-06-06 18:06:10 +03:00
Jyri Sarha b9b030757f topology2: dmic-generic.conf: Rename "DMIC" PCM name to "DMIC Raw"
Rename "DMIC" PCM name to "DMIC Raw" in the generic dmic topology fragment.
The PCM is on the DMIC patch without any processing beyond gain and IIR EQ,
thus the "Raw" extension.

Signed-off-by: Jyri Sarha <jyri.sarha@linux.intel.com>
2023-06-02 13:13:45 +03:00
Jyri Sarha 08acbe4b6f topology2: cavs-nocodec.conf: Rename ssp-capture and DMIC0 Raw PCMs
Rename cavs-nocodec capture PCMs. The current PCM names are confusing. These
should be better names for them. The former

"ssp-capture" is now "Port0 2nd Capture",
"DMIC0 Raw" is now "DMIC SFX1", and
"DMIC0 Raw 2" is now "DMIC SFX2".

The PCMs in question have extra gains in the path to simulate processing.
Also the mixer name is changed to compensate for the matching "Capture"
substring in the end of the PCM name, that is part of the mixer name,
to avoid "Capture Capture" tautology.

Signed-off-by: Jyri Sarha <jyri.sarha@linux.intel.com>
2023-06-02 13:13:45 +03:00
Pierre-Louis Bossart 058e6571a5 topology1: add support for Dell SKU 0934
Yet another permutation. This needs to be back-ported to 2.2 releases

Closes: https://github.com/thesofproject/linux/issues/4399
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
2023-06-02 13:12:06 +03:00
Ranjani Sridharan 6fb22d645e topology2: intel: dmic-generic: Simplify the core ID setting
When all components of a pipeline are scheduled on the same core, use
the pipeline's core_id attribute to set the core_id for all the
components in it. Also, remove the default core_id in class definitions
so that it doesn't take priority over the value passed from the pipeline
object.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-06-01 13:16:56 +03:00
Ranjani Sridharan f1075489cf topology2: dai-copier: Add clarification on input/output format counts
These are mandatory for both directions as they are used to set the DMA
buffer format.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-29 09:56:13 +03:00
Ranjani Sridharan 6e2d497371 topology2: dai-copier: num_input_pins/num_output_pins shouldn't be mandatory
Set them based on direction and the actual number of pins used.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-29 09:56:13 +03:00
Ranjani Sridharan 66aaa599e9 topology2: dai-copier: Change the naming convention
Change the naming from dai-copier.<copier_type>.<pipeline_id>.<instance>
to dai_copier.<copier_type>.<stream_name.<direction>.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-29 09:56:13 +03:00
Ranjani Sridharan ab9449fa08 topology2: tokens: Reduce the string length of token names
In preparation for changing the name of the DAI copier which will make
them a bit longer, reduce the token name lengths by removing the
sof_tkn_ prefix. This is required because the header names in topology
have a 44 character limit and with a long name like:
dai-copier.SSP.NoCodec-0.playback.sof_tkn_comp.uuid, the limit will be
hit. Removing the sof_tkn_ prefix will reduce the number of characters
in the tuple name headers.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-29 09:56:13 +03:00
Ranjani Sridharan 1b9cb679bb topology2: components: Make uuid common for all widgets
Move the uuid attribute definition to widget-common.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-29 09:56:13 +03:00
Ranjani Sridharan 96bd6bc62d topology2: copier: Rename it to dai-copier
To make it explicit that it is only for the DAI gateway.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-29 09:56:13 +03:00
Jyri Sarha a6984b8503 topology2: dmic-generic.conf: Rename generic DMIC volume
Rename generic DMIC mixer name. Define the associated PCM name in a
common place and refer to that name on the mixer name.

On cavs-tgl-nocodec.tplg is seen a following mixer name change:

'gain.13.1 DMIC0 Capture Volume 1' > 'gain.13.1 DMIC Capture Volume'

Signed-off-by: Jyri Sarha <jyri.sarha@linux.intel.com>
2023-05-26 11:08:26 +03:00
Jyri Sarha b918e1f316 topology2: nocodec-ssp0-2level.conf: Rename Port0 Aux Volume
Rename SSP0 Aux Playback stream volume before mixing. Use the
associated PCM name in the mixer name. This change affects nocodec
topologies and appears on sof-tgl-nocodec.tplg as a following change:

'gain.21.1 Playback Volume 8' -> 'gain.21.1 Pre Mixer Port0 Aux Playback Volu'

Unfortunately the new mixer name does fit into the space reserved for
it, but it should get fixed once we get rid of the "gain 21.1"-prefix.

Signed-off-by: Jyri Sarha <jyri.sarha@linux.intel.com>
2023-05-26 11:08:26 +03:00
Jyri Sarha bdff11cc7a topology2: cavs-nocodec.conf: Rename DMIC0 post mux volumes
Rename cavs-nocodec.conf DMIC0 volumes. Define variables for the
associated PCM names and refer to them in the mixer names. The changes
shown in sof-tgl-nocodec.tplg are:

'gain.18.1 Capture Raw Volume 1' > 'gain.18.1 Post Demux DMIC0 Raw Capture Volu'
'gain.19.1 Main Capture Volume 3' > 'gain.19.1 Pre Demux DMIC0 Raw Capture Volum'
'gain.20.1 Capture Raw Volume 2' > 'gain.20.1 Post Demux DMIC0 Raw 2 Capture Vo'

Signed-off-by: Jyri Sarha <jyri.sarha@linux.intel.com>
2023-05-26 11:08:26 +03:00
Jyri Sarha 0f7f4e96b8 topology2: cavs-nocodec.conf: Rename SSP0 Capture Volumes
Rename SSP0 capture related volumes. Define a variable for PCM name
and refer to it in the mixer names.

Using sof-tgl-nocodec.tplg the changes are:

'gain.8.1 Host Capture Volume' > 'gain.8.1 Pre Demux Port0 Capture Volume'
'gain.7.1 Main Capture Volume 1' > 'gain.7.1 Post Demux Port0 Capture Volume'
'gain.17.1 Main Capture Volume 2' > 'gain.17.1 Post Demux ssp-capture Capture Vo'

Signed-off-by: Jyri Sarha <jyri.sarha@linux.intel.com>
2023-05-26 11:08:26 +03:00
Jyri Sarha 76310a0a0e topology2: cavs-nocodec.conf: Rename SSP0, SSP1, and SSP2 playback volumes
Rename SSP0, SSP1, and SSP2 playback volumes according to PCM names
they are connected to. Define the PCM names as variables so the name
can be changed in a single place.

This is how the change will look like in sof-tgl-nocodec.tplg:

'gain.1.1 Playback Volume 1' > 'gain.1.1 Pre Mixer Port0 Playback Volume'
'gain.2.1 Main Playback Volume 2' > 'gain.2.1 Post Mixer Port0 Playback Volume'
'gain.3.1 Playback Volume 3' > 'gain.3.1 Pre Mixer Port1 Playback Volume'
'gain.5.1 Playback Volume 5' > 'gain.5.1 Pre Mixer Port2 Playback Volume'
'gain.6.1 Main Playback Volume 6' > 'gain.6.1 Post Mixer Port2 Playback Volume'

Signed-off-by: Jyri Sarha <jyri.sarha@linux.intel.com>
2023-05-26 11:08:26 +03:00
Pierre-Louis Bossart 3d54d14f3f topology1: add Dell SKU 0BDA support
Yet another missing topology

This needs to be back-ported to the 2.2 stable branch for releases

Closes: https://github.com/thesofproject/linux/issues/4380
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
2023-05-26 10:49:33 +03:00
Bard Liao 601d2bc41e topology2: sdw-amp-generic: set virtual widget type output
Widget type snd_soc_dapm_out_drv and snd_soc_dapm_output will be treat
as virtual widget and be ignored in sof topology in kernel.
We need to set type = output or out_drv in topology when it is a virtual
widget.

Fixes: 3835846836 ("topology2: sdw-amp-generic: Show all aggregated DAIs on the graph")
Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
2023-05-25 13:39:23 +03:00
Yong Zhi 94f8b0c4d4 topology2: fix number range between 1 and 1000 used by Regex
Since IncludeByKey uses Regular expressions to validate text match,
the expression [1-1000] does not filter number between 1 to 1000 as
intended. For example, DEEPBUFFER_FW_DMA_MS=0 results in matched while
DEEPBUFFER_FW_DMA_MS=5 returns not found, fix with regex flavor pattern.

Signed-off-by: Yong Zhi <yong.zhi@intel.com>
2023-05-23 13:12:21 +03:00
Bard Liao fda59fb7d4 topology2: remove cavs-sdw.tplg from avs-tplg
There is no device that uses the topology.

Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
2023-05-22 22:30:36 -07:00
Ranjani Sridharan 3835846836 topology2: sdw-amp-generic: Show all aggregated DAIs on the graph
When there are aggregated amps, the topology includes a DAI copier for
each aggregated DAI. But, since the second DAI is not connected to
anything in topology, it doesn't show up in the graph. So, add a virtual
widget and connect it to the aggregated DAI and the gain module to show
its existence in the graph. When parsing the topology, the kernel
ignores all routes that contain a virtual widget at any end of the
route.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-22 18:53:45 -07:00
Ranjani Sridharan 919b402abc topology2: dai-copier: Remove ALH support
Remove ALH support in the generic dai-copier class as it has its own
class now.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-22 18:53:45 -07:00
Ranjani Sridharan 05628c9c48 topology2: Use the new ALH dai copier class
Replace the use of the generic dai-copier class with the ALH specific
DAI copier and pipeline class.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-22 18:53:45 -07:00
Ranjani Sridharan e9353b0eed topology2: Introduce a new pipeline class
This is specifically meant to be used with ALH DAI copiers.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-22 18:53:45 -07:00
Ranjani Sridharan 457113a275 topology2: components: Introduce a new class definition for ALH DAI copiers
Create a new class for ALH because they are different from the other DAI
types with DAI index being irrelevant. So, it would need a new naming
scheme that's more meaningful. For ex: dai-copier-ALH.SDW1-Playback.0

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-22 18:53:45 -07:00
Jyri Sarha af9bedb63e topology2: cavs-mixin-mixout-hda: Rename mixin-mixout mixers
Rename mixin and mixout Analog Playback volumes. Rewrite the names of
the mixers to better reflect their position in the topology.

As a result of this commit mixers are renamed in sof-hda-generic.tplg.

'gain.1.1 1 2nd Playback Volume' becomes
'gain.1.1 Pre Mixer Analog Playback Volume'

and

'gain.2.1 2 Main Playback Volume' becomes
'gain.2.1 Post Mixer Analog Playback Volume'

Signed-off-by: Jyri Sarha <jyri.sarha@linux.intel.com>
2023-05-19 12:54:41 -07:00
Ranjani Sridharan e5455775b0 topology2: copier: Remove host gateway type support
It is now handled by the host-copier class. Renaming the copier class to
dai-copier and modifying its naming convention will be done in the
follow up patches.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-19 08:17:34 -07:00
Ranjani Sridharan b534fc6192 topology2: host-gateway-playback: Use host-copier
Replace the generic copier with host-copier in the class definition and
the instances.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-19 08:17:34 -07:00
Ranjani Sridharan ac26e70d95 topology2: host-gateway-capture: use host-copier
Replace the generic copier with host-copier in the class definition and
the instances.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-19 08:17:34 -07:00
Ranjani Sridharan 81a354e750 topology2: gain-copier-capture: Use host-copier
Replace the generic copier with host-copier in the class definition and
the instances.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-19 08:17:34 -07:00
Ranjani Sridharan 3bee3c25fc topology2: gain-playback: Use host-copier
Replace the generic copier with host-copier in the class definition.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-19 08:17:34 -07:00
Ranjani Sridharan 9e95cd288b topology2: gain-capture: Use host-copier
Replace the generic copier with host-copier in the class definition and
the instances.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-19 08:17:34 -07:00
Ranjani Sridharan eb157a5c2f topology2: mixout-gain-host-copier-capture: Use host-copier
Replace the generic copier with host-copier in the class definition.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-19 08:17:34 -07:00
Ranjani Sridharan b86acaa353 topology2: deepbuffer-playback: Use host-copier
Replace the generic copier with host-copier in the class definition and
the instances.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-19 08:17:34 -07:00
Ranjani Sridharan f942a0338a topology2: src-gain-mixin-playback: Use host-copier
Replace the generic copier with host-copier in the class definition and
the instances.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-19 08:17:34 -07:00
Ranjani Sridharan be825a8581 topology2: host-copier-gain-src-mixin-playback: Use host-copier
Replace the generic copier with host-copier in the class definition and
the instances.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-19 08:17:34 -07:00
Ranjani Sridharan f211f4c9da topology2: host-copier-gain-mixin-playback: Use host-copier
Replace the generic copier with host-copier object in the pipeline class
definition and all its instances.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-19 08:17:34 -07:00
Ranjani Sridharan f64a424bfd topology2: components: Add a new class definition for the host copier gateway
This will replace the generic copier for the host gateway.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-19 08:17:34 -07:00
apoorv 5fa9cb6be4 topology1: CMakeLists: add RPLP CRB support for SoundWire
Added RPLP CRB support for SoundWire0 and SoundWire2

Signed-off-by: apoorv <apoorv@intel.com>
2023-05-19 10:07:45 +03:00
Ranjani Sridharan d132e25480 topology2: cavs-nocodec-bt: Remove duplicate route
This has already been added in bt-generic.conf.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-18 09:09:05 -07:00
Kai Vehmanen d87b5f9d0b topology2: cavs-nocodec-bt: fix bclk for loopback A2DP case
The BCLK was incorrect for the loopback (LBM) configuration
for BT A2DP (48kHz 2ch 16bit), leading to incorrect playback/capture
speed.

Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
2023-05-17 19:55:29 +03:00
Bard Liao 3436ea54ab topology2: add tgl rt712 topology
Add sof-tgl-rt712 support. rt712 is a multi function codec which
shpports headset, amp, and dmic functions.

Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
2023-05-17 07:49:52 -07:00
Jaska Uimonen a2944ddc51 topology2: move bt nocodecs to development
Move bluetooth nocodec topology to development and add target
for mtl.

Signed-off-by: Jaska Uimonen <jaska.uimonen@intel.com>
2023-05-17 13:11:33 +03:00
Bard Liao 004241927f topology2: sdw-amp-generic: use fixed format on amp feedback io
Use fixed 32 bit format on io-gateway and let host-gateway do the
conversion.

Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
2023-05-16 09:05:44 -07:00
Ranjani Sridharan 8c005ef6a9 topology2: sof-lnl-nocodec-fpga: Add 2ch DMIC topologies
Build the 2ch topologies with either PDM0 or PDM1 enabled.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-15 11:26:12 +03:00
Ranjani Sridharan 9e7ec5a3f2 Revert "topology2: cavs-nocodec: add a module copier to SSP 0 capture pipeline"
DAI copiers now support multiple sinks. So revert the temporary
workaround in the cavs-nocodec topology.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-12 14:26:51 +03:00
Rander Wang 406e660a34 topology2: add google rtc aec support
Add google rtc aec in topolog for chrome project

Signed-off-by: Rander Wang <rander.wang@intel.com>
2023-05-11 12:46:44 -07:00
Rander Wang 912408822c topology2: add google-rtc-aec-reference
Top topology can include this conf file to enable google rtc aec

Signed-off-by: Rander Wang <rander.wang@intel.com>
2023-05-11 12:46:44 -07:00
Rander Wang 4bf7c60061 topology2: add google-rtc-aec-capture pipeline
This aec is connected to host copier

Signed-off-by: Rander Wang <rander.wang@intel.com>
2023-05-11 12:46:44 -07:00
Rander Wang ff5c10337f topology2: add google rtc aec module support
Goolge rtc aec only supports 16bits input & output and 2 channels

Signed-off-by: Rander Wang <rander.wang@intel.com>
2023-05-11 12:46:44 -07:00
Ranjani Sridharan 4123f95353 topology2: cavs-nocodec: Build LNL nocodec topology
Build LNL nocodec topology with simple copier-copier pipelines.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-11 19:03:21 +03:00
Ranjani Sridharan 142b8de409 topology2: intel: dmic-generic: Implement passthrough option
Add the host and IO gateway pipelines when the passthrough option is
chosen and connect them.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-11 19:03:21 +03:00
Ranjani Sridharan 88ead25037 topology2: intel: dmic-generic: Make processing pipelines optional
In preparation for adding copier-copier pipeline, make the processing
pipelines conditional. There is no change in functionality or
definitions. This is purely to make it easier to exclude the
pipelines/pcms/routes from the final topology.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-11 19:03:21 +03:00
Ranjani Sridharan fff55d4235 topology: include: pipelines: ip-gateway-capture: set default direction
It is meant for capture.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-11 19:03:21 +03:00
Ranjani Sridharan 19d9cce4cf topology2: cavs-nocodec: Implement passthrough option
Add the host and io gateway pipelines when the passthrough option is
chosen and connect them directly.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-11 19:03:21 +03:00
Ranjani Sridharan 5ea630dbef topology2: cavs-nocodec: Make the processing pipelines optional
In preparation for generating simple copier->copier pipelines, add an
option to make the processing pipelines conditional. There is no change
in functionality or definitions. This is purely to make it easier to
exclude these pipelines/pcms/routes from the final topology.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-11 19:03:21 +03:00
Ranjani Sridharan d37da44c39 topology2: cavs-nocodec: Make io-gateway for SSP1 capture conditional
It should be added only if SSP1 is enabled

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-11 19:03:21 +03:00
Rander Wang c605296636 topology2: add multicore support for CI test
create another topology to test multicore since Currently we have done
too much work in cavs-nocodec and CI test will be failed for main branch
is not ready for multicore feature.

Signed-off-by: Rander Wang <rander.wang@intel.com>
2023-05-10 17:12:30 +03:00
Yong Zhi 04749b9c41 topology2: dmic-generic: add macro for DMIC_CORE_ID
Add macros to quickly enable multi-core with DMICs.

Signed-off-by: Yong Zhi <yong.zhi@intel.com>
2023-05-08 19:55:02 -07:00
Bard Liao a3cb46d8c0 topology2: cavs-sdw: make jack optional
We assume sdw jack is always there in a sdw topology. This commit
makes it be optional to deal with the sdw amp only case.

Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
2023-05-08 09:17:44 -07:00
Ranjani Sridharan 74f324641a topology2: cavs-nocodec: add a module copier to SSP 0 capture pipeline
Add a module copier between the DAI copier and gain in preparation for
optimizing the single endpoint DAI copiers. This optimization will
temporarily make multiple sinks unsupported with DAI copiers. This
feature will be re-introduced in a follow up PR and the module copier
will be removed then.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-08 12:23:52 +03:00
Ranjani Sridharan 3c39c2c996 topology2: cavs-sdw: Enable PDM 1 mics for 4ch
It would be better to make these dependedent on NUM_DMICS. Something to
improve in a follow up PR.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-05-05 19:42:29 +03:00
Iuliana Prodan 6580e68302 topology: imx: Add mixer topology file for i.MX8 and i.MX8MP with wm8962 codec
Generate MIXER topology file for i.MX8 and i.MX8MP with wm8962 codec
based on sof-imx8-wm8960-mixer.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2023-05-04 16:43:50 +03:00
Iuliana Prodan 5846763006 topology: imx: Combine mixer topology files for i.MX8MP and i.MX8
Combine mixer topology files for i.MX8MP and i.MX8 using different
variables like RATE, SAI_INDEX, CODEC.

Based on CODEC and SAI_INDEX use the proper DAI_CONFIG or STREAM_NAME.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2023-05-04 16:43:50 +03:00
Iuliana Prodan aeaa96e0b4 topology: imx: Add EQ topology file for i.MX8MP and i.MX8 with wm8962 codec
Generate EQ (fir and iir) topology file for i.MX8MP and i.MX8
with wm8962 codec.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2023-05-04 16:43:50 +03:00
Iuliana Prodan 67fa702308 topology: imx: Combine base topology files for i.MX8MP and i.MX8
Combine base topology files for i.MX8MP and i.MX8 using different
variables like RATE, SAI_INDEX, CODEC.

Based on CODEC and SAI_INDEX use the proper DAI_CONFIG or STREAM_NAME.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2023-05-04 16:43:50 +03:00
Iuliana Prodan 181777dea1 topology: imx: Add SRC topology file for i.MX8 and i.MX8MP with wm8962 codec
Generate SRC topology file for i.MX8 and i.MX8MP with wm8962 codec
based on sof-imx8-src-wm8960.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2023-05-04 16:43:50 +03:00
Iuliana Prodan e08be9c2d7 topology: imx: Combine SRC topology files for i.MX8MP and i.MX8
Combine SRC topology files for i.MX8MP and i.MX8 using different
variables like RATE, SAI_INDEX, CODEC.

Based on CODEC use the proper DAI_CONFIG or STREAM_NAME.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2023-05-04 16:43:50 +03:00
Iuliana Prodan ac99aaf5b9 topology: imx: Add compress topology file for i.MX8 with wm8962 codec
First, combine compress topology file for i.MX8 (i.MX8QM and i.MX8QXP)
with different codecs, stream name, rate by using CODEC and RATE variables.
Based on CODEC use the proper DAI_CONFIG.

Using the above variables, add new compress topology file for
i.MX8 with wm8962 codec.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2023-05-04 16:43:50 +03:00
Iuliana Prodan cc77454f86 topology: imx: Add compress topology file for i.MX8MP with wm8962 codec
First, combine compress topology file for i.MX8MP with different codecs,
stream name, rate by using CODEC and RATE variables.
Based on CODEC use the proper DAI_CONFIG.

Using the above variables, add new compress topology file for
i.MX8MP with wm8962 codec.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2023-05-04 16:43:50 +03:00
Iuliana Prodan 3ad5ace14d topology: imx: Rearrange topologies based on platform
Rearrange topologies, from development folder, based on
platform type: imx8 and imx8mp.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2023-05-04 16:43:50 +03:00
Iuliana Prodan 9c48a89f2e topology: imx8: correct comments for compress tplg
Update comments for compress typologies to reflect the correct
flow and the use for each file.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2023-05-04 16:43:50 +03:00
Iuliana Prodan 1b5dae791d topology: imx8mp: correct comments for compress tplg
Update comments for compress typologies to reflect the correct
flow and the use for each file.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2023-05-04 16:43:50 +03:00
Ranjani Sridharan dfe52aac14 Tools: Topology2: SRC format fixes
This patch avoids with development topology sof-hda-src-generic.tplg
the playback start failure and error seen in trace
"buffer: buffer_alloc(): new size = 0 is invalid".

The kernel selects in case of multiple output formats defined the
format that matches the input. It then caused the obs to become zero.
When the SRC is used in the mixin-based playback pipeline, its output
format is limited to 32-bits format only. So replace the multiple
output formats with a single 48K, 2ch 32-bit format.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>
2023-05-03 13:24:45 +03:00
Chao Song fabeb63842 Topology2: Add mtl-rt711-l0-rt1316-l23-rt714-l1 support
This topology could be used by MTL SDW RVP with 3-in-1
SDCA codec board, or other hardware configuration with
the same codec layout:
    SDW0: RT711 Headphone
    SDW1: RT714 DMIC
    SDW2: RT1316 Speaker
    SDW3: RT1316 Speaker

Signed-off-by: Chao Song <chao.song@linux.intel.com>
2023-04-27 10:29:34 +03:00
Chao Song d3e3943bad Topology2: add comment to separate chromebook topology clearly
Add a single comment to separate chromebook topologies
from non-chromebook topologies.

Signed-off-by: Chao Song <chao.song@linux.intel.com>
2023-04-27 10:29:34 +03:00
Ranjani Sridharan 0140c43099 topology2: Set the deepbuffer PCM D0i3 compatibility conditionally
Set the deep buffer PCM as D0I3 compatible only for MTL.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-04-27 10:25:45 +03:00
Laurentiu Mihalcea 88c8c1eb27 tools: topology1: Add topology for i.MX93
As the name suggests, this commit introduces a new topolgy
used for i.MX93.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2023-04-24 22:06:58 +01:00
Yong Zhi a706f40433 topology2: Enable chain DMA for MTL cavs-rt5682 topologies
Enable ChainDMA to support 16/32bit, channels_max 8 HDMI playback.

Signed-off-by: Yong Zhi <yong.zhi@intel.com>
2023-04-24 12:24:36 +03:00
Kai Vehmanen be43b4e4eb topology1: fix buffer size calculation if period-size >44ms
Calculation of SOF_TKN_BUF_SIZE in COMP_PERIOD_FRAMES() macro
led to incorrect results with large period size values.
For example at 48000Hz sampling rate, period size larger than
44739us would be incorrectly calculated.

This happens as m4 eval does arithmetic in 32bit signed values
and multiplication of period size and sampling rate can easily
exceed 2^31.

Fix the issue by splitting the arithmetic in steps that
fit available value range.

Link: https://github.com/thesofproject/sof/issues/7476
Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
2023-04-24 11:49:04 +03:00
Ranjani Sridharan 6339cfd5aa topology2: Removed period_sink/source_count attributes
These were added for use with IPC3 but since topology2 is not targeted
for IPC3, there's no need to keep them anymore.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-04-24 10:10:51 +03:00
Ranjani Sridharan b3139af01c topology2: Remove num_audio_formats attribute
This has been replaced by num_input_audio_formats and
num_output_audio_formats. So remove the attribute from all components
and mark the token ID as deprecated.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-04-24 10:10:51 +03:00
Bard Liao 6f96d0f37e topology2: rename NUM_SDW_AMPS to NUM_SDW_AMP_LINKS
NUM_SDW_AMPS refers to how many sdw links are used by the amp pcm.
Rename to NUM_SDW_AMP_LINKS for less confusing.

Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
2023-04-21 20:48:09 +03:00
Ranjani Sridharan 228ecf5768 topology2: hdmi-generic: Fix audio format for DAI copier
It should only support 32-bit format for input and output.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-04-20 23:04:38 -07:00
Ranjani Sridharan 9fa5d722b4 topology2: Remove 24-bit audio formats in mixin/mixout
The 24-bit formats defined in topologies will never be used because the
mixin/mixout only support 32-bit format. So remove these audio formats
from the component and pipelines audio format definitions.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-04-20 23:04:38 -07:00
Ranjani Sridharan e5eb7dfc76 topology2: tokens: Split the tokens for input/output pin index
Separate the pin index token ID for input/output pin index to avoid
collisions between the two and incorrect pin index parsing in the
kernel.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-04-20 12:19:35 -07:00
Yong Zhi ffe0ce68a1 topology2: cavs-rt5682: remove 24-bit override in mixout-gain-dai-copier-playback
With 208c2049f ("topology2: deep buffer: use 32 bits to align with
other pipeline"), we can remove this override now.

Signed-off-by: Yong Zhi <yong.zhi@intel.com>
2023-04-19 21:59:41 -07:00
Ranjani Sridharan 78be251a44 topology2: Move common_definitions.conf
These are Intel-specific, so move them to the platform/intel folder

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-04-11 15:54:31 +03:00
Ranjani Sridharan cbe01073f6 topology2: copier: Make node_type mandatory
Introduce a new class for module-to-module copiers and make node_type
mandatory for the copier class.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-04-11 15:54:31 +03:00
Ranjani Sridharan b74c26b52c topology2: Rename passthrough-capture.conf
Rename it to host-gateway-capture to align it with the documentation.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-04-11 15:54:31 +03:00
Ranjani Sridharan 3ee2ab63a7 topology2: Rename passthrough-playback.conf
Rename it to host-gateway-playback.conf to align with the documentation.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-04-11 15:54:31 +03:00
Ranjani Sridharan 91a436ef7d topology2: Rename passthrough-capture-be
Rename it to io-gateway-capture.conf to align with the documentation.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-04-11 15:54:31 +03:00
Ranjani Sridharan a37f8f473d topology2: io-gateway: Fix a typo
Fix the typo in the pipeline name

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-04-11 15:54:31 +03:00
Iuliana Prodan ae0869fe2d topology: imx: Add topology file for i.MX8MP with wm8962 codec
Add new topology file for i.MX8MP with wm8962 codec.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2023-04-07 18:41:19 -05:00
Iuliana Prodan 7550fb7e35 topology: imx: Combine topology files for i.MX8MP with different options
Combine topology files for i.MX8MP with different codecs and rate, by
using CODEC and RATE variables.
Based on CODEC use the proper DAI_CONFIG.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2023-04-07 18:41:19 -05:00
Iuliana Prodan 6687c298f2 topology: imx: Add topology file for i.MX8QM with wm8962 codec
Add new topology file for i.MX8QM with wm8962 codec.

While here, use CODEC variable to differentiate between wm8960
and wm8962.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2023-04-07 18:41:19 -05:00
Iuliana Prodan 0b1d10b099 topology: imx: Rearrange topologies based on platform
Rearrange topologies based on platform type: imx8,
imx8mp and imx8ulp.

Signed-off-by: Iuliana Prodan <iuliana.prodan@nxp.com>
2023-04-07 18:41:19 -05:00
Pin-chih Lin 975dc84e1e topology1: set lower priority for DMIC task in GOOGLE_RTC_AUDIO case
When GOOGLE_RTC_AUDIO is applied, Speaker and DMIC pipeline tasks are
scheduled in the same domain. The AEC function in GOOGLE_RTC_AUDIO
has the hard requirement for input sample synchronization between DMIC
input and Echo reference (sourced from Speaker).

At present, both pipelines are pri-0 so the task order in schedule
list depends on which pipeline starts first. This commit sets DMIC as
pri-1 when GOOGLE_RTC_AUDIO is applied to make sure that DMIC task
will be always put after Speaker task, which guarantees the
requirement for input sample synchronization.

Signed-off-by: Pin-chih Lin <johnylin@google.com>
2023-04-06 21:50:18 +01:00
Ranjani Sridharan 650423feb1 topology2: Move the hw_config class definition
Move and rename the hw_config class to
platform/intel/hw_config_cardinal_clk.conf.
This hw_config is specific to Intel SSP DAI that use the cardinal clock
for the mclk frequency.

Ideally, this class should have immutable mclk_frequency and link clock
source. But because the alsatplg compiler expects the name of the hw
config class to be "hw_config" without any extensions, it is left as
modifiable for now. Once the topology compiler is modified, this will be
made immutable in a follow up PR.

Also, introduce a new hw_config_simple.conf file that contains the
hw_config definition for the HDA/DMIC/SDW type DAIs with only the ID and
name attributes.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-04-05 13:32:30 -07:00
Ranjani Sridharan ada8950551 topology2: ssp: Add blob version
Add the SSP blob version and set it based on the platform.

Co-developed-by: Jaska Uimonen <jaska.uimonen@intel.com>
Signed-off-by: Jaska Uimonen <jaska.uimonen@intel.com>
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-04-05 13:32:30 -07:00
Jyri Sarha 525e7e39d1 topology2: Enable chain DMA for MTL sof-hda-generic* topologies
This change sets USE_CHAIN_DMA=true for sof-hda-generic-2ch
and sof-hda-generic-4ch mtl targets in sof-ace-tplg directory.

Signed-off-by: Jyri Sarha <jyri.sarha@linux.intel.com>
2023-04-05 19:58:48 +03:00
Ranjani Sridharan 60bc228b81 topology2: mixout-gain-smart-amp-dai-copier-playback: Do not set copier node_type
It should be set based on DAI type during pipeline instantiation.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-04-04 18:36:19 -07:00
Ranjani Sridharan c94dca8be1 topology2: sof-hda-generic: No need to include dai-copier-gain-mixin-capture
It is not used in the topology.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-04-04 18:36:19 -07:00
Ranjani Sridharan de56d36240 topology2: dai-copier-be: Do not set copier node_type
It should be set based on DAI type when the pipeline is instantiated.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-04-04 18:36:19 -07:00
Ranjani Sridharan 0b6d4a7576 topology2: mixout-gain-efx-dai-copier-playback: Do not set default node_type
It should be set based on DAI type.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-04-04 18:36:19 -07:00
Ranjani Sridharan 719cb075f8 topology: mixout-gain-dai-copier-playback: Do not set default node_type
It should be set when the pipeline is instantiated based on the DAI
type.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-04-04 18:36:19 -07:00
Ranjani Sridharan ae7036dce2 topology2: io-gateway: Do not set copier node_type
It is wrong to set a default value when creating widgets objects within
pipelines and these must be set at the top-level based on the DAI type.
So remove the default value in be-dai.conf and set the node_type
whenever the pipeline is initialized.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-04-04 18:36:19 -07:00
Ranjani Sridharan afb0f73512 topology2: rename passthrough-be to io-gateway.conf
All it contains is a IO gateway copier and a pipeline widget. So rename
it accordingly.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-04-04 18:36:19 -07:00
Ranjani Sridharan 362a0781f2 topology2: Remove dma_buffer_size attribute
There's been a recent kernel change to compute the DMA buffer size using
the ibs/obs. So this attribute no longer needs to be set in the
topology.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2023-03-31 20:41:07 +03:00