Skip to content

Commit 140cbee

Browse files
committed
Merge branch 'master' into publish
2 parents f98ed72 + 5d47504 commit 140cbee

194 files changed

Lines changed: 59134 additions & 4581 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎.wokeignore‎

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,9 @@ contribute/process/bug-tracking.rst
1616
contribute/process/images/*
1717
getting_started/setup/setup_up_2_board.rst
1818
developer_guides/setup_special_device/setup_up_2_board.rst
19-
developer_guides/virtualization/virtualization.rst
2019
developer_guides/firmware/component-tutorial/tut-ii-topology.rst
2120
developer_guides/subsystem_architecture/host/linux_driver/architecture/sof_driver_arch.rst
2221
developer_guides/tech/compile_wsl.rst
23-
developer_guides/virtualization/files/q-v6.sh
2422
developer_guides/topology/topology.rst
2523
developer_guides/fuzzing/testbench_afl_fuzzing.rst
2624

‎algos/index.rst‎

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,10 @@ Supplied Processing Algorithms
99
SOF provides an extensive ecosystem of permissively-licensed and royalty-free audio processing
1010
algorithms that can be used alongside proprietary processing components to build production audio pipelines.
1111

12-
In addition to upstream native algorithms, license-compatible open-source algorithms from external projects
13-
(such as FFmpeg, WebRTC, Valve Steam Audio, CMSIS-DSP, and vendor DSP libraries) can be compiled as dynamically
14-
loadable modules (e.g. Zephyr LLEXT / ELF modules) and linked at runtime into active audio pipelines. This
12+
In addition to upstream native algorithms, open-source and partner processing algorithms from
13+
ecosystem providers (including FFmpeg, WebRTC, Valve Steam Audio, DTS, Dolby, Google, Realtek,
14+
Cadence, CMSIS-DSP, and vendor DSP libraries) can be compiled as dynamically loadable modules
15+
(e.g. Zephyr LLEXT / ELF modules) or integrated into active audio pipelines. This
1516
modular architecture allows open-source, vendor, and proprietary intellectual property (IP) components to be safely
1617
integrated into the same pipeline graph without license contamination or monolithic recompilation.
1718

‎api/components.rst‎

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
.. _api_components:
2+
3+
Audio Processing Components API
4+
###############################
5+
6+
SOF includes a rich library of standard audio processing components, covering volume control,
7+
gain attenuation, channel mixing, IIR/FIR equalization, dynamic range compression (DRC),
8+
sample rate conversion (SRC/ASRC), sound dose measurement, and acoustic filters.
9+
10+
.. doxygengroup:: audio_components_api
11+
:project: SOF Project

‎api/index.rst‎

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,19 @@ The Doxygen documentation covers the entire public firmware and host-shared inte
4242
* **Source Code Graphs & File Browsing**:
4343
Full source file tree, header include dependency graphs, and function call/caller graphs.
4444

45+
Subsystem C API References
46+
**************************
47+
48+
.. toctree::
49+
:maxdepth: 1
50+
51+
ipc4
52+
modules
53+
pipeline
54+
components
55+
rtos
56+
math
57+
4558
Building API Documentation Locally
4659
**********************************
4760

‎api/ipc4.rst‎

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
.. _api_ipc4:
2+
3+
IPC4 Host-DSP Protocol API
4+
##########################
5+
6+
The IPC4 protocol defines the communication contract between the host operating system
7+
driver and the Sound Open Firmware DSP. It governs pipeline creation, module binding,
8+
audio gateway configuration, runtime parameter adjustment, and asynchronous telemetry.
9+
10+
.. doxygengroup:: ipc4_api
11+
:project: SOF Project

‎api/math.rst‎

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
.. _api_math:
2+
3+
DSP Math & Filter Libraries API
4+
###############################
5+
6+
Digital signal processing routines in SOF provide optimized fixed-point and floating-point
7+
mathematical routines. These include trigonometric approximations, polynomial functions,
8+
CORDIC algorithms, Fast Fourier Transforms (FFT), IIR/FIR filter structures, and matrix
9+
operations.
10+
11+
.. doxygengroup:: dsp_math_api
12+
:project: SOF Project

‎api/modules.rst‎

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
.. _api_modules:
2+
3+
Loadable Module & LLEXT API
4+
###########################
5+
6+
Sound Open Firmware supports dynamic, modular audio processing through both built-in
7+
and dynamically loadable ELF extensions (LLEXT). The module API defines the common
8+
interface contracts, initialization structures, parameter exchange mechanisms,
9+
and source/sink endpoint buffers.
10+
11+
.. doxygengroup:: module_api
12+
:project: SOF Project

‎api/pipeline.rst‎

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
.. _api_pipeline:
2+
3+
Audio Pipeline & Buffer API
4+
###########################
5+
6+
Audio pipelines in SOF represent directed processing graphs linking audio stream sources,
7+
processing components, interconnect buffers, and audio sinks. This API governs pipeline
8+
scheduling domains, thread execution models, circular buffer management, and stream
9+
state transitions.
10+
11+
.. doxygengroup:: audio_pipeline_api
12+
:project: SOF Project

‎api/rtos.rst‎

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
.. _api_rtos:
2+
3+
RTOS Abstraction Layer API
4+
##########################
5+
6+
The RTOS abstraction layer decouples Sound Open Firmware core logic from underlying
7+
real-time operating system primitives. It standardizes spinlocks, mutexes, task
8+
scheduling, high-resolution clocks, hardware timers, memory allocation pools,
9+
and cache coherency operations across supported DSP architectures.
10+
11+
.. doxygengroup:: rtos_api
12+
:project: SOF Project

‎architectures/index.rst‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -605,6 +605,9 @@ At the heart of the firmware is the audio processing pipeline framework:
605605
ctl_eq -> comp_eq [style=dashed, color="#d35400", label="IPC Set Data"];
606606
}
607607

608+
.. seealso::
609+
For an in-depth architectural explanation of how pipelines, modules, Low-Latency (LL) and Data Processing (DP) scheduling domains, circular buffers, lifecycle management, and the runtime state machine operate, see the :ref:`pipeline_architecture` developer guide.
610+
608611
Topology 2 Architecture
609612
=======================
610613

0 commit comments

Comments
 (0)