SOF Project Logo
latest
  • SOF project website
  • Introduction to the SOF Project
    • SDK Introduction and Overview
      • SOF source code, tools, and topologies
      • Host OS Drivers
      • Firmware Toolchain
      • DSP Emulator
    • General FAQ
    • Toolchain FAQ
  • Getting Started Guides
    • Build SOF
      • Build toolchains and SOF from sources
        • Step 1. Set up the workspace directory
        • Step 2. Set up build environment
        • Step 3. Build toolchains from source
        • Step 4. Build and sign firmware binaries
        • Step 5. Build topology and tools
        • Step 6. Build Linux kernel
      • Build SOF with Docker
        • Set up the workspace directory
        • Set up Docker
        • Build firmware binaries with Docker
        • Build topology and tools with Docker
      • Build SOF with a 3rd Party Toolchain
        • Cadence® Tensilica® Xtensa® C/C++ Compiler (XCC)
      • Build SOF with Zephyr
        • Prepare
        • Clone and initialize SOF project
        • Check out and build using Python convenience script
        • Check out and build using west tool directly
        • Run
        • Troubleshoot
    • Set up SOF on a Linux machine
      • Set up a Development Environment to Build the Kernel
      • Install the Kernel Locally
        • Introduction
        • Build and install the kernel
        • Update and rebuild
        • Remove the kernel
      • Set up a Ktest-based Environment
        • Introduction
        • Set up a target
        • Configure SSH without password
        • Build and install the kernel with ktest
    • Set up SOF on a special device
      • Set up SOF on MinnowBoard Turbot
        • MinnowBoard resources
        • Development
      • Set up SOF on Up Squared board with Hifiberry DAC+ (STD)
        • Prerequisites
        • Setup Instructions
    • Debug Audio issues on Intel platforms
      • Overview of Intel hardware platforms
        • ACPI platforms (introduced before and up to 2015)
        • PCI devices (introduced after 2016)
        • User space and filesystem requirements
      • Suggestions before filing an SOF bug
        • Run alsa-info
        • Disable SOF on PCI/HDaudio devices to test audio playback
        • Try booting into Windows first, then reboot into Linux
        • Make sure the ME is enabled
        • Test at the ALSA ‘hw’ device level
        • Verify mixer settings
        • Enable dynamic debug
        • Install sof-logger
        • Digital mic issues
        • ES8336 support
    • SOF on NXP platforms
      • SOF User Guide on NXP i.MX8 platforms
        • Supported NXP platforms
        • Toolchain
        • Quick run with SOF from i.MX8 Board Support Package
        • Build SOF binaries from sources
        • Audio scenarios
  • Architecture
    • Host Architecture
      • SOF Linux Driver Architecture
        • Overview
        • Driver Probe
        • SOF Platform Driver
        • IPC Processing
        • PCM Driver
        • Power Management
        • Intel Drivers
        • Support for High Definition Audio (HD-Audio)
        • Kernel Configuration/Kconfig
        • Debug Options
    • Firmware Architecture
      • SOF Common Architecture
        • Components
      • SOF with XTOS Architecture
        • Overview
        • Memory Management
        • Power Management
        • Schedulers
        • Drivers
        • Pipelines
        • Keyword detection
      • SOF with Zephyr Architecture
        • Overview
        • Application Layer
        • Media Processing Pipelines Layer
        • RTOS Layer Infrastructure
        • Zephyr API Integration
      • Vendor-Specific Architecture Information
        • Intel cAVS Architecture
        • Intel ACE Architecture
  • Platforms
    • Supported Platforms
    • Minimum Platform Requirements
      • Footprint
      • DSP Clock Speed
      • Toolchain
    • Platform Specific Information
      • Intel Hifi2-EP Platforms
        • Intel Merrifield
        • Intel Bay Trail / Cherry Trail
        • Intel Broadwell
      • Intel CAVS Platforms
        • CAVS Commons
        • Intel Apollo Lake
        • Intel Cannon Lake
        • Intel Ice Lake
        • Intel Tiger Lake
  • Algorithms
    • Supplied Processing Algorithms
    • Algorithm Specific Information
      • Sample Rate Conversion
        • Introduction
        • Use of SRC generator tool
        • Test the SRC component
        • Polyphase decomposition
        • References
      • Multiplexer/Demultiplexer
        • Introduction
      • Time Domain Fixed Beamformer (TDFB)
        • Introduction
        • Beamformer types
        • Microphone array geometries
        • Filter bank design procedure
        • Design examples
        • Simulation
  • Developer Guides
    • Introduction
      • SOF Core Concepts
    • Firmware
      • Hello World Tutorial
        • Part I - Adding a Component Code to FW
        • Part II - Modifying the Topology & Driver
        • Part III - Adding Run-time Parameter Control
        • Part IV - Working with Exception Reports
      • Porting Guides
        • Architecture Porting Guide
        • Platform Porting Guide
      • CMake Arguments
        • Firmware & Unit Tests
        • Firmware
        • Unit Tests
        • Host Testbench
      • Async Messaging Best Practices
        • Message Type IDs
        • Message Handling
        • Processing in a consumer callback
        • Message Filtering Mechanism
        • Passing Pointers In Asynchronous Messages
        • One-way Messages
        • Two-way Messages - Example #1
        • Two-way Messages - Example #2
        • Max message size
        • Queue is Full
    • Unit Tests
      • Prerequisites
      • Configuring for unit tests
        • Example: Running tests for APL
        • Compiling unit tests without a cross-compilation toolchain
      • Wrapping objects for unit tests
      • Notes
    • Xtensa Simulator (xt-run)
      • Prerequisites
      • Standalone programs
      • Unit tests
    • SOF Topology
      • 1. Topology Ingredients
        • 1.1 Widgets
        • 1.2 Tokens/Vendor Tuples
        • 1.3 Kcontrols
        • 1.4 Pipelines
        • 1.5 Backend DAI
        • 1.6 Backend DAI link Config
        • 1.7 DSP Core Index
      • 2. Create a new topology
        • 2.1 Example topology with single pipeline
        • 2.2 Example topology with multiple pipelines
      • 3. Debug topology
      • 4. Acronyms
    • Topology 2.0
      • Ingredients
        • Classes
        • Objects
        • Arguments in top-level configuration files
        • Includes
      • Simple machine topology
      • Conditional includes
      • Building 2.0 configuration files
      • Topology reminders
      • Alsaconf reminders
    • UUID Usage in SOF
      • Why UUIDs
      • UUID allocation
      • UUID in topology
      • Linux topology driver
      • UUID arrays stored section
      • UUID to component driver mapping
      • ABI alignment for UUID support
    • Debugability
      • Traces
        • Building & Processing Traces
        • Enabling Traces
        • Adding Traces
      • Logger
        • Logger usage
        • Trace filtering
      • Coredump-reader
        • Coredump-reader usage
        • Usage with Linux SOF Driver
      • Probes
        • Requirements
        • Enabling Probes
        • Data extraction
        • Data parsing
        • Simple logging case
      • sof-ri-info
        • Examples
      • Performance Counters
        • Performance Counters usage
        • Example
    • Runtime Tuning
      • Find out effect numids
      • Example equalizer settings
      • Help
    • Rimage
      • Extended Manifest
        • Build flow
        • Add a new element
      • Build flow
    • SOF Linux Driver
      • Third Party Features User Guides
        • Keyword Detection Driver Implementation and User Guide
    • SOF VirtIO design
      • General information
      • SOF VirtIO design
        • Communication channels
        • Topology
        • DPCM audio routing
      • Implementation
        • Initialization
        • Streaming
        • Deactivation
    • Run SOF VirtIO
      • General information
      • 1. Create a VM image
      • 2. Build the Linux kernel
      • 3. Build QEMU
      • 4. Build the SOF firmware
      • 5. Run QEMU
    • Fuzzing
      • Fuzzing in Docker
        • Instructions
        • Important notes
      • Build a Fuzzing Testbench with AFL
        • Install AFL
        • Build a testbench with AFL instrumentation
        • Run AFL
        • Example
    • Testbench
      • Build and Run Testbench
        • host-testbench.sh
      • Debug Component in Testbench
        • GDB and DDD
        • Valgrind
        • Gprof
      • Prepare a New Component for Testbench
      • Test Audio Quality
    • Adding a new DSP architecture to SOF
      • Method 1 - New HAL
      • Method 2 - Use existing RTOS
    • Technical Notes
      • Build Cmocka for Xtensa
        • Cmocka fork
        • Simple build on Linux
        • Cross-platform build
      • Build on Windows 10 with WSL
        • Prerequisites
        • Enable 32-bit binaries
        • Fix stat in 32-bit binaries
        • Compile
  • Release
    • Firmware and Tools
      • Git
      • Source and Binary Releases
    • Linux Driver
  • Contributing to the Project
    • Contribution Guidelines
      • Licensing
      • Developer Certification of Origin (DCO)
        • DCO Sign-Off Methods
      • Prerequisites
    • Documentation Guidelines
      • Headings
      • Content Highlighting
      • Lists
      • Multi-column lists
      • File names and Commands
      • Internal Cross-Reference Linking
      • Non-ASCII Characters
      • Code and Command Examples
      • Tabs, spaces, and indenting
    • Documenting the Source Code
      • Basic Rules
      • Examples
    • Bug Tracking
      • Life Cycle of a Bug
      • Labels
        • Solution Labels
        • Priority Labels
        • Plaform and Branch Labels
        • Other optional Labels
      • How to Report a Bug
      • How to Close a Bug
    • SOF Documentation Generation
      • Documentation overview
      • Set up documentation working folders
      • Install documentation tools
      • Documentation presentation theme
      • Run documentation processors
      • Publish content
      • Installation troubleshooting
      • Windows troubleshooting
      • Diagram compilation troubleshooting
    • SOF ABI Change Process
      • SOF ABI definitions
      • Change process
      • Document modified fields
      • ABI change approvers
        • TSC
        • SOF driver
    • Linux SOF drivers
      • Background
      • Instructions for SOF developers
        • ABI changes
        • Development branch
        • Rebasing tree
        • Upstream merges
      • Development flow
        • SOF Linux maintainers
        • SOF maintainers process
      • Development summary
  • Technical Steering Committee (TSC)
    • TSC Representatives
    • TSC Meetings
  • SOF admin, maintainers and code owners
    • SOF admin
    • Merge rights
    • SOF code owners
  • API Documentation
    • UUID API
    • DMA Drivers API
    • DAI Drivers API
    • PM Runtime API
    • Platform API
    • Memory Allocation API
    • Audio Stream API
    • Component API
    • Component API Ext
    • uAPI
  • Presentations
    • SOF Mentions
SOF Project
  • Developer Guides
  • Debugability

Debugability¶

  • Traces
  • Logger
  • Coredump-reader
  • Probes
  • sof-ri-info
  • Performance Counters

© Copyright 2023, SOF Project. Last updated on Jan 26, 2023.