Skip to content

Commit ebf6107

Browse files
committed
topology2: add split topologies description
Describe what are split topologies and how to create it. Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
1 parent 6eee88f commit ebf6107

File tree

1 file changed

+47
-0
lines changed

1 file changed

+47
-0
lines changed

developer_guides/topology2/topology2.rst

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1332,6 +1332,53 @@ You can use the ``-P`` switch to convert a 2.0 configuration file to the 1.0 con
13321332
13331333
alsatplg <-D args=values> -P input.conf -o output.conf
13341334
1335+
Split topologies
1336+
****************
1337+
1338+
Linux kernel can load multiple topologies, a topology for a single function.
1339+
This feature is useful to support SDCA setups with standardized components. And no need to create topologies
1340+
for every new product. To achieve this, you need to split the topology into multiple tplg files.
1341+
The split topology files should be named as follows:
1342+
1343+
.. code-block:: bash
1344+
1345+
sof-<platform>-<function>-id<BE id number>.tplg
1346+
1347+
Where <platform> should be the platform name like mtl, lnl, etc.
1348+
And <platform> is only needed for the DMIC function.
1349+
1350+
Where <function> should be one of
1351+
1352+
.. code-block:: bash
1353+
1354+
sdca-jack: SDCA headphone and headset.
1355+
sdca-<n>amp: SDCA amp, where n is the amp link numbers.
1356+
sdca-mic: SDCA host mic.
1357+
dmic-<n>ch: PCH DMIC, where n is the number of supported channels. Currently, only 2ch and 4ch are supported.
1358+
sdca-hdmi: HDA connected display audio in a system where other codecs are SoundWire.
1359+
1360+
1361+
For example
1362+
1363+
.. code-block:: bash
1364+
1365+
sof-sdca-2amp-id2.tplg
1366+
sof-sdca-mic-id4.tplg
1367+
sof-arl-dmic-2ch-id5.tplg
1368+
sof-sdca-hdmi-id7.tgpl
1369+
1370+
The split topologies are the subset of the monolithic topology. Usually, you just need to add a description with proper
1371+
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
1372+
to generate the split topologies.
1373+
1374+
For example
1375+
1376+
.. code-block:: bash
1377+
1378+
"cavs-sdw\;sof-arl-sdca-2amp-id2\;PLATFORM=mtl,NUM_SDW_AMP_LINKS=2,SDW_JACK=false,\
1379+
SDW_AMP_FEEDBACK=false,SDW_SPK_STREAM=Playback-SmartAmp,NUM_HDMIS=0"
1380+
1381+
13351382
Topology reminders
13361383
******************
13371384

0 commit comments

Comments
 (0)