Skip to content

Latest commit

 

History

History
131 lines (108 loc) · 9.74 KB

File metadata and controls

131 lines (108 loc) · 9.74 KB

Sound Open Firmware Documentation

Welcome to the Sound Open Firmware (SOF) technical documentation portal.

Sound Open Firmware is a permissively licensed, open-source audio Digital Signal Processing (DSP) firmware infrastructure, SDK, and real-time execution framework governed under the Linux Foundation and directed by the SOF Technical Steering Committee (TSC).

SOF provides transparent, deterministic, low-latency audio processing infrastructure for modern computing architectures ranging from embedded microcontrollers and IoT devices to multi-core client PCs and servers.

Sound Open Firmware audio DSP processing

Architecture & Key Capabilities

Sound Open Firmware delivers a unified, cross-platform audio software stack across two foundational deployment paradigms:

  • Host-Based Client Architecture: Where the DSP operates as an accelerator coupled to a host application processor running Linux, ChromeOS, Android, or Windows. The mainline Linux kernel driver subsystem (sound/soc/sof/) manages firmware lifecycle, dynamic ALSA topology parsing, and aggressive power gating (D0ix runtime idle, D3 cold suspend), while real-time audio streams exchange through mailbox IPC protocols (IPC4 and IPC3) and host DMA memory windows.
  • Hostless & Standalone Architecture: Where SOF executes autonomously on microcontrollers and embedded DSPs (such as the Espressif ESP32-P4 or PJRC Teensy 4.1 / i.MX RT1062) atop the Zephyr RTOS. Standalone topologies process audio directly between hardware peripherals (I2S/TDM, SoundWire, PDM microphones, and S/PDIF) without requiring a host OS.

Documentation Pillars & Navigation

Explore the documentation portal by selecting one of the core technical pillars below:

Learn about the SOF project mission, benefits of audio DSP offloading (power, deterministic latency, vertical stack centralization), licensing, and governance.

Read Introduction »

Set up your build host, configure the LLVM/Clang Xtensa cross-compiler toolchain, compile firmware images for target platforms, and run simulation in QEMU.

Explore Quickstart »

Deep dive into firmware architecture: audio pipeline execution graphs (DAGs), lockless ring buffers, Zephyr RTOS abstraction, IPC3/IPC4 protocols, and power management.

View Architecture »

Hardware compatibility specifications across Intel CAVS & ACE (PTL, ARL, MTL, TGL), AMD, NXP i.MX, MediaTek, Espressif ESP32-P4, and PJRC Teensy 4.1.

Browse Platforms »

Comprehensive catalog of built-in audio signal processing modules: Volume, Mixer, Parametric EQ (FIR/IIR), DRC, SRC, ASRC, Crossover, DCBlock, and Wake-on-Voice.

Inspect Algorithms »

Step-by-step developer runbooks: ALSA Topology 2 creation, UCM2 configuration and debugging, LLEXT dynamic module integration, CMake workflows, and real-time DSP probes.

Read Guides »

Interactive Doxygen API documentation and Sphinx Breathe subsystem reference for IPC4, LLEXT modules, pipeline scheduling, audio components, RTOS abstraction, and DSP math.

Explore C API »

Join the SOF open-source community: contributor guidelines, Git patch submission rules, TSC meeting minutes, releases, and frequently asked questions.

Contribute »
.. toctree::
   :hidden:

   SOF Project Website <https://sofproject.org>
   introduction/index.rst
   getting_started/index.rst
   architectures/index.rst
   platforms/index.rst
   algos/index.rst
   developer_guides/index.rst
   release.rst
   contribute/index.rst
   tsc/index.rst
   api/index.rst
   presentations/index.rst
   faq/index.rst