Skip to content

topology2: add Cherry Trail RT5677 IPC3 topology - #11129

Open
MaurizioCasciano wants to merge 2 commits into
thesofproject:mainfrom
Yoga-Book:submission/cht-rt5677-topology2-ipc3-v1
Open

topology2: add Cherry Trail RT5677 IPC3 topology#11129
MaurizioCasciano wants to merge 2 commits into
thesofproject:mainfrom
Yoga-Book:submission/cht-rt5677-topology2-ipc3-v1

Conversation

@MaurizioCasciano

@MaurizioCasciano MaurizioCasciano commented Aug 25, 2026

Copy link
Copy Markdown

Summary

  • add topology2 support for the Lenovo Yoga Book Cherry Trail SSP2/RT5677 audio path using IPC3
  • keep IPC3 artifacts in a separate ABI/build/install directory from the existing IPC4 production set
  • configure DSP_B, 19.2 MHz MCLK, 4.8 MHz BCLK, 48 kHz stereo, four 25-bit frame slots and two active slots
  • add a binary artifact verifier for the SSP and PCM contract

Root cause

SOF IPC3 derives the DAI channel count from the population count of the active TDM slot mask. Enabling all four frame slots with 0xf while exposing stereo PCMs makes STREAM_PCM_PARAMS fail with -EINVAL. The RT5677 still uses a four-slot frame, but only slots 0 and 1 are active (0x3).

Validation

  • cmake --build build-tools --target topology2_prod_ipc3_sof-cht-rt5677
  • python3 tools/topology/topology2/verify-cht-rt5677.py build-tools/topology/topology2/production/ipc3/sof-cht-rt5677.tplg
  • complete cmake --build build-tools --target topologies2 (580 generated targets)
  • rebuilt artifact SHA-256: 746962d80115e3b9b0b2fbe44673b4e3acef5f06f7914baf235a5a652e8be09c

Hardware-tested on a Lenovo Yoga Book YB1-X91L. PCM0 playback and capture open successfully as S16_LE, S24_LE and S32_LE at 48 kHz stereo; PCM1 deep-buffer playback also opens successfully. Speaker, headphones and internal DMIC routing were exercised through UCM without the previous IPC parameter error.

Repeated suspend/resume while live PipeWire streams remain open can still expose a separate SOF 2.2 firmware resume failure. This PR fixes the topology channel contract and does not claim to solve that firmware lifecycle issue.

Fixes #11105

Add topology2 support for generating and deploying IPC3 topology files alongside the existing IPC4 production set.

Describe the Yoga Book RT5677 SSP2 playback, capture, low-latency and deep-buffer paths while preserving the Cherry Trail memory, scheduler and hardware configuration required by the legacy IPC3 firmware.

Signed-off-by: Maurizio Casciano <mauriziocasciano7@gmail.com>
SOF IPC3 derives the DAI channel count from the population count of the active TDM slot mask. The original topology enabled all four frame slots with mask 0xf while exposing two-channel PCM streams, so STREAM_PCM_PARAMS failed with -EINVAL.

Keep the required four-slot, 25-bit frame geometry but activate only the two stereo slots with mask 0x3. Also use the defined default_hw_config_id attribute and add an artifact verifier for the SSP clocks, format, frame geometry, sample width and PCM capabilities.

Tested on a Lenovo Yoga Book YB1-X91L with PCM0 playback and capture in S16_LE, S24_LE and S32_LE at 48 kHz stereo, plus PCM1 deep-buffer playback.

Signed-off-by: Maurizio Casciano <mauriziocasciano7@gmail.com>
@sofci

sofci commented Aug 25, 2026

Copy link
Copy Markdown
Collaborator

Can one of the admins verify this patch?

reply test this please to run this test once

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[FEATURE][CHT] Add SOF topology support for Lenovo Yoga Book RT5677

2 participants