Skip to content

Commit

Permalink
topology2: add split topologies description
Browse files Browse the repository at this point in the history
Describe what are split topologies and how to create it.

Signed-off-by: Bard Liao <[email protected]>
  • Loading branch information
bardliao committed Jan 21, 2025
1 parent 6eee88f commit e6ba9c3
Showing 1 changed file with 47 additions and 0 deletions.
47 changes: 47 additions & 0 deletions developer_guides/topology2/topology2.rst
Original file line number Diff line number Diff line change
Expand Up @@ -1332,6 +1332,53 @@ You can use the ``-P`` switch to convert a 2.0 configuration file to the 1.0 con
alsatplg <-D args=values> -P input.conf -o output.conf
Split topologies
****************

Linux kernel can load multiple topologies, a topology for a single function.
This feature is useful to support SDCA setups with standardized components. And no need to create topologies
for every new product. To achieve this, you need to split the topology into multiple tplg files.
The split topology files should be named as follows:

.. code-block:: bash
sof-<platform>-<function>-id<BE id number>.tplg
Currently <platform> is only needed for the DMIC function.
It should be mtl, lnl, etc.

Where <function> should be one of

.. code-block:: bash
sdca-jack: SDCA headphone and headset.
sdca-<n>amp: SDCA amp, where n is the amp link numbers.
sdca-mic: SDCA host mic.
dmic-<n>ch: PCH DMIC, where n is the number of supported channels. Currently, only 2ch and 4ch are supported.
sdca-hdmi: HDA connected display audio in a system where other codecs are SoundWire.
For example

.. code-block:: bash
sof-sdca-2amp-id2.tplg
sof-sdca-mic-id4.tplg
sof-arl-dmic-2ch-id5.tplg
sof-sdca-hdmi-id7.tgpl
The split topologies are the subset of the monolithic topology. Usually, you just need to add a description with proper
macro settings to disable the features that you don't need and set the first BE ID that in the topology in the cmake file
to generate the split topologies.

For example

.. code-block:: bash
"cavs-sdw\;sof-arl-sdca-2amp-id2\;PLATFORM=mtl,NUM_SDW_AMP_LINKS=2,SDW_JACK=false,\
SDW_AMP_FEEDBACK=false,SDW_SPK_STREAM=Playback-SmartAmp,NUM_HDMIS=0"
Topology reminders
******************

Expand Down

0 comments on commit e6ba9c3

Please sign in to comment.