Skip to content

v2.11

Compare
Choose a tag to compare
@kv2019i kv2019i released this 27 Sep 07:57
· 417 commits to main since this release

v2.11

The SOF technical steering committee is pleased to announce the v2.11 release of SOF.

Signed binaries for selected platforms are here https://github.com/thesofproject/sof-bin/releases (sof-bin-2024.09).

Highlights

  • New platforms: AMD ACP7.0, Intel Panther Lake
  • Multiple bugfixes and improvements to HIFI4 optimizations
  • Topology: support for multiple new Intel MTL/LNL/ARL based devices
  • Topology: beamformer (TDBF) and Dynamic Range Compressor (DRC) added to HDA generic topology for Intel platforms (see below diagram). These are by default in passthrough mode and will require device specific setup either via UCM files or via alsa mixer configuration.

image

  • Enhanced render and capture pipelines:
    • When set up, the enhanced render pipeline improves notebook speaker playback quality with a better frequency response for a more natural sound and better loudness with less non-linear distortion when played loudly.
    • When set up, the enhanced capture pipeline improves loudness of silent sounds and amplifies sound arriving from the look direction of a microphone array in notebooks with a slight reduction of noise in the same process.

What's Changed

  • topology2: Add new token 'playback_pause_supported' and set it true f… by @ujfalusi in #9202
  • LLEXT: clean data and code segmentation by @lyakh in #9190
  • versions.json: set version to 2.10.99 by @kv2019i in #9198
  • Misc mt8xxx-related fixups by @andyross in #9210
  • Tools: Testbench: Fix load of MFCC component by @singalsu in #9207
  • Zephyr: fix build breakage with Zephyr "main" by @lyakh in #9199
  • src: fix src-lite by @lyakh in #9206
  • Tools: Topology2: Use rates instead of rate_min/max in benchmark by @singalsu in #9218
  • topology2: common: pcm_caps: Change the periods_max from 1024 to 256 by @ujfalusi in #9204
  • audio: volume: disable HIFI4 optimizations by @gbernatxintel in #9208
  • intel_adsp: ptl: Fix SOF compilation without PM by @pjdobrowolski in #9203
  • component/module refactoring pass by @andyross in #9211
  • tools: plugin: README: remove reference to tgl-nocodec by @yongzhi1 in #9166
  • src: base_fw: adjust ssp copier init flow for ptl (with Zephyr update) by @dnikodem in #9220
  • Tools: Topology2: Update sof-hda-efx-generic controls names by @singalsu in #9181
  • Free a couple of memory leaks in the SOF plugin by @ranj063 in #9055
  • west.yml: update Zephyr to 97a97c744a29 by @pjdobrowolski in #9241
  • dp bugfix: wait till dp thread stops in thread cancel by @marcinszkudlinski in #9136
  • app: add new shell_overlay.conf by @kv2019i in #9133
  • Google AEC rework: dynamic formats, legacy platform support by @andyross in #8919
  • PTL upstream by @pjdobrowolski in #9185
  • zephyr: buffer: host: dai: Introduction of functions that allocate a buffer from a range by @softwarecki in #9145
  • copier: dai: fix sndw init flow by @iganakov in #9256
  • topology2: mtl-rt5650: Add configuration for AEC w/o DTS by @andyross in #9240
  • app: boards: intel_adsp_ace15_mtpm: disable IMR context-save by @kv2019i in #9232
  • boards: config: add U8 bit format support for PTL by @dnikodem in #9257
  • Audio: Optimize division by speed of sound using fixed-point reciprocal by @ShriramShastry in #9160
  • Audio: SRC: Tune: Move SRC setup scripts to module directory by @singalsu in #9183
  • Audio: Improvement of multiband_drc memory allocation error handling. by @ShriramShastry in #9177
  • [SKIP SOF-TEST] Add new file: app/overlays/repro-build.conf by @marc-hb in #9264
  • [SKIP SOF-TEST] xtensa-build-zephyr.py: move PTL out of "all" and into "extra". by @marc-hb in #9266
  • west.ytml: update to Zephyr 650227d8c47f (July 3rd) by @kv2019i in #9278
  • audio: base_fw_intel: Fix problem with send structure ext_system_time_data by @gbernatxintel in #9277
  • [SKIP SOF-TEST] platform/posix: Port fuzzer to upstream "native_sim" board by @andyross in #9280
  • google_aec: Sparse fixups by @andyross in #9265
  • intel-adsp: zephyr: Replace deprecated symbol by @ceolin in #9237
  • topology2: enable HDMI for all SoundWire production topologies by @plbossart in #9267
  • boards: ace30: Enable system-managed device power management by @tmleman in #9269
  • Audio: DRC: Tune: DRC setup scripts to module directory by @singalsu in #9188
  • [SKIP SOF-TEST] build: use CONFIG_64BIT for symbol exporting by @lyakh in #9273
  • zephyr: shell: add initial SOF custom commands by @kv2019i in #9174
  • topology2: fix HDMI dailink offsets for RT711-based RVPs by @plbossart in #9284
  • Global UUID registry, cleanup, simplification by @andyross in #9261
  • schedule: zephyr_domain: include domain block in ll time tracking by @kv2019i in #9173
  • cadence: unification of cadence module naming by @dnikodem in #9287
  • ipc3: fix type usage bug by @cujomalainey in #9288
  • App: Boards: Set CONFIG_COMP_DRC=y for PTL platform by @kv2019i in #9289
  • pipeline 2.0 - introduce abstract audio_buffer api by @marcinszkudlinski in #9260
  • Performance measurements: Add Global Performance Measurements by @tobonex in #9186
  • copier: Add bind function to configure source/sink buffers params by @softwarecki in #9276
  • topology2: force all SoundWire link-side copiers to use S24_LE by @plbossart in #9282
  • LLEXT: fix failures and make DRC an LLEXT module by default on MTL by @lyakh in #9116
  • west.yml: update zephyr to 740d7f735e2 by @tmleman in #9291
  • Add device posture feature by @serhiy-katsyuba-intel in #9238
  • intel_adsp_ace15_mtpm.conf: temporarily disable CONFIG_MODULES by @marc-hb in #9313
  • app/stub_build_all_ipc3/4.conf: enable CONFIG_CADENCE_CODEC by @AnneOnciulescu in #9312
  • sof_ri_info: add Intel LNL and ARL-S production keys by @kv2019i in #9310
  • topology2: add basic definitions for PTL by @plbossart in #9305
  • west.yml: update zephyr to 3bcaa6f8d63 by @tmleman in #9338
  • modules: A collection of small fixes for loadable modules by @softwarecki in #9333
  • src: dai-zephyr: copy data to all available sinks by @dnikodem in #9200
  • Audio: Optimize and fix TDFB direction calculation by @ShriramShastry in #9169
  • topology2: add support for MTL Acer Swift Go 14 by @bardliao in #9346
  • Topology2: fix soundwire audio formats by @plbossart in #9328
  • topology2: sdw-dmic-generic: add eqiir to control DC offset by @plbossart in #9331
  • multiband_drc: instantaneous enabled state switch on processing by @johnylin76 in #9329
  • src/audio/module_adapter/CMakeLists.txt: add CADENCE_CODEC_MP3_ENC by @AnneOnciulescu in #9315
  • Few LMDK fixes by @serhiy-katsyuba-intel in #9311
  • Revert "intel_adsp_ace15_mtpm.conf: temporarily disable CONFIG_MODULES" by @marc-hb in #9347
  • Add initial Google CTC component by @eddy1021 in #8689
  • topology: Update topology name of AMD platform ACP_6_3 by @saisurya-ch in #9352
  • ipc3: Add size checks on ipc subtypes by @cujomalainey in #9297
  • Eradicate -Wl,-EL for good by @marc-hb in #9353
  • west.yml: update zephyr to 795ac34f291 by @tmleman in #9357
  • Add $SOF_CC_BASE variable for building XTOS with clang-based, Cadence toolchains by @marc-hb in #9358
  • [RFC] fix for 9343 Failed "assert(buffer->is_shared)" in fuzzing by @marcinszkudlinski in #9356
  • Tools: Topology2: Add enhanced audio capture development topologies by @singalsu in #9176
  • Tools: Topology2: DMIC: Bug fix 4ch host copier channels count by @singalsu in #9368
  • CTC topology by @eddy1021 in #8840
  • platform: imx93_a55: select CONFIG_IMX by @LaurentiuM1234 in #9373
  • src_lite: fix 32kHz to 16kHz conversion issue by @tobonex in #9348
  • Use the new SubTreeCopy feature in the topology2 compiler by @ranj063 in #9354
  • drivers: imx: ipc: make wait_for_interrupt snippet xtensa-specific by @LaurentiuM1234 in #9380
  • [SKIP SOF-TEST] fuzz.sh: replace deprecated OVERLAY_CONFIG with newer EXTRA_CONF_FILE by @marc-hb in #9381
  • Tools: test: Audio: Fix src_test.m run error by @singalsu in #9376
  • Audio: MFCC: Fix build of component for current SOF by @singalsu in #9365
  • Move log and system_service headers to module directory by @softwarecki in #9335
  • ipc: replace enum fields with uint32_t in some IPC structures by @LaurentiuM1234 in #9379
  • Audio Math: Improve audio format saturation functions. by @ShriramShastry in #9344
  • Module adapter cleanup by @cujomalainey in #9383
  • Audio: MFCC: Fix 64 bit build issue by @singalsu in #9390
  • Tools: Topology2: Fix cavs-nocodec.conf SSP2 PCM rates by @singalsu in #9382
  • [SKIP SOF-TEST] fuzz.sh: add new boards/native_sim_libfuzzer.conf by @marc-hb in #9389
  • performance measurements: Fix SOF_TELEMETRY_PERFORMANCE_MEASUREMENTS=… by @jsarha in #9392
  • smart_amp: fix return errors by @cujomalainey in #9387
  • zephyr: don't build host targets with xtos headers by @cujomalainey in #9393
  • src: dai-/host-zephyr: Drop the duplicated function name print and print the src/sink frames when there is nothing to copy on dai side by @ujfalusi in #9397
  • Selector get_data fixes by @cujomalainey in #9388
  • Audio: Optimize sink checks in crossover_s32_default by @ShriramShastry in #9178
  • IPC: Increase SOF_IPC_MSG_MAX_SIZE for testbench and unit test by @singalsu in #9402
  • audio: mfcc: fix signed 1-bit field by @cujomalainey in #9385
  • Tools: Test: Audio: Mitigate trace flood in process_test.m by @singalsu in #9403
  • topology2: hda: add passthrough option as well as CHAIN_DMA by @plbossart in #9321
  • ipc3: add subsize check by @cujomalainey in #9374
  • module_adapter: fix switch case for spec parsing by @cujomalainey in #9384
  • [SKIP SOF-TEST] CODEOWNERS: remove marc-hb by @marc-hb in #9421
  • CPC: fix 0 CPC module clock scaling by @lyakh in #9319
  • Tools: Rimage: Config: Add mfcc.toml include for MTL, LNL, PTL by @singalsu in #9414
  • Audio: Volume: Fix problem with Hifi4 by @singalsu in #9408
  • Audio: MFCC: Fix mistake with HiFi4 circular buffer index by @singalsu in #9415
  • Audio: EQ: Tune: Move equalizer setup scripts to module directory by @singalsu in #9187
  • tools: plugin: noise_suppression: Fix build error by @ranj063 in #9412
  • [SKIP SOF-TEST] native_sim_libfuzzer.conf: override some incompatible hardware options by @marc-hb in #9405
  • Audio: Crossover: Move blob configuration scripts to module directory by @singalsu in #9215
  • Audio: DCblock: Tune: Move dcblock setup scripts to module directory by @singalsu in #9184
  • Pipeline2.0 STEP2 - move hybrid buffering logic from comp_buffer to audio_buffer and partially place comp_buffer on top of audio_buffer by @marcinszkudlinski in #9299
  • [SKIP SOF-TEST] Add new -i3/-i4 flags + fuzz_*features.conf files to add more CONFIG_ when fuzzing by @marc-hb in #9409
  • intel_adsp_ace15_mtpm.conf: replace blanket _STUBS with focused RTC MOCK by @marc-hb in #9404
  • west.yml: update Zephyr to 689d1edee1d5 by @kv2019i in #9437
  • boards: ace30: enable SOF log level at INF level by @kv2019i in #9436
  • UBSAN fuzzing fixes by @cujomalainey in #9433
  • xtensa/config/core.h: provide UINT32_C() not just for ZEPHYR by @marc-hb in #9442
  • Debug stream thread info pr by @jsarha in #9398
  • Scripts: Add testbench build for Intel PTL platform DSP by @singalsu in #9417
  • basefw: Add handling of IPC4_DMA_CONTROL messages by @tmleman in #9156
  • llext: fix multi-core use cases by @lyakh in #9438
  • xtensa-build-zephyr.py: create /lib/firmware tarball by @kv2019i in #9363
  • [SKIP SOF-TEST] fuzz: add argument to support other sanitizers by @cujomalainey in #9444
  • module_adapter: add mixer component for initialization by @iuliana-prodan in #9443
  • topology2: cavs-sdw: Add cs42l43 and cs35l56 support on ADL/RPL, MTL/ARL, LNL by @macchian in #9355
  • fix: remove reference to comp_buffer form sink/src based mod by @marcinszkudlinski in #9400
  • xtensa-build-zephyr.py: cosmetic: rename "overlays" variable by @marc-hb in #9435
  • Tools: Test: Audio: Fixes and updates to process_test.m by @singalsu in #9448
  • LLEXT: automatically calculate module addresses (first part of #9430) by @lyakh in #9439
  • Audio: Multiband-DRC: Move blob configuration scripts to module directory by @singalsu in #9216
  • platform: intel: ace: remove redundant definitions from memory.h by @kv2019i in #9450
  • posix: align mailboxes by @cujomalainey in #9434
  • Add CTC binary and switch controls by @eddy1021 in #9370
  • Add the new platform ACP_7_0 by @saisurya-ch in #9351
  • rtos: add Zephyr implementation of sof/lib/dai.h by @kv2019i in #9457
  • base_fw: move SRAM bank details to Intel specific code by @kv2019i in #9456
  • fuzzer: add ubsan support by @cujomalainey in #9452
  • Tools: Topology2: Add beamformer and DRC to HDA analog capture by @singalsu in #9447
  • Tools: Topology2: Enable DMIC capture pre-processing for hda-generic by @singalsu in #9441
  • ipc3: check alignment of ext data by @cujomalainey in #9459
  • Debug stream thread info fixe. Should be backported for 2.11 by @jsarha in #9451
  • platform: lunarlake: remove drivers/interrupt.h by @kv2019i in #9462
  • LLEXT: make src, asrc, volume, eq_fir and tdfb modular by @lyakh in #9430
  • topology2: tplg-targets-hda-generic: Add support for HDMI + DMIC comb… by @ujfalusi in #9109
  • Support for volume controls in SOF plugin by @ranj063 in #9446
  • .github/zephyr: switch to python 3.10 on windows by @LaurentiuM1234 in #9468
  • app: intel_adsp_ace15_mtpm.conf: set DRC as built-in by @kv2019i in #9472
  • xtos: move list.h to application interface by @kv2019i in #9466
  • [stable-v2.11] versions.json: set version to 2.11.0 by @kv2019i in #9480

New Contributors

Full Changelog: v2.10...v2.11