User Tools

Site Tools


GSoC 2020: Sound Open Firmware project

Sound Open Firmware

Sound Open Firmware is an open source audio DSP firmware and SDK that provides audio firmware infrastructure and development tools for developers who are interested in audio or signal processing on modern DSPs

Proposal: Enhance SOF Linux kernel debugging support for i.MX8 platforms

Sound Open Firmware has multiple components but in order to understand the proposal one needs to firstly have a look at these two components:

  • SOF Linux kernel driver, this runs on the ARM core and it's the link between ALSA kernel layer and DSP.
  • SOF firmware, this runs on the DSP and it is responsible for audio processing, etc.

The goal of this project is to enahance the Linux kernel driver debugging support. This includes:

  • add functionality to retrieve DSP traces when DSP panics.
  • add functionality to filter logs from DSP based on various parameters.
  • enhance and update documentation
  • add a serial console driver on DSP (this is optional)

Github issues:

Code license: GPL-2.0 OR BSD-3-Clause

The project is considered successful if the code is accepted into SOF github tree.

Where to start?

Small ideas to work on to get familiar with the project

All the ideas below are just ways of exploring the project.

Get SOF binaries

  • Follow tutorial here Getting started in order to compile Linux kernel, SOF firmware, SOF topologies.

Create one Pull Request for the SOF repo

Create one patch for the Linux kernel

Watch this Write and Submit your first Linux kernel Patch.

Before sending the patch to community please send it to for review. Make sure you only look into drivers/staging directory.

Use Qemu to get a feel of how things are working

  • Qemu repo is at we use branch sof-v4.2
  • Build qemu by looking at Firmware . Look at chapter 'Build the Qemu DSP emulator from source.'
  • Try to boot sof-imx8.ri SOF binary with qemu
    • Use the following command ./xtensa-softmmu/qemu-system-xtensa -cpu imx8 -M adsp_imx8 -nographic -kernel ../sof.git/build_imx8_gcc/src/arch/xtensa/sof-imx8.ri
  • Look at Using the Qemu DSP emulator and try to run a full system with Linux kernel and SOF firmware.

Join #sof channel on IRC

Use an IRC client like pidgin to join #sof channel on There you can find support and quick answers.


If you are interested about this project please drop me an email at: Daniel Baluta

You can also find me on IRC: _daniel_ on #alsa-soc OR #sof channel, on server Web IRC

gsoc/2020-gsoc-sound-open-firmware.txt · Last modified: 2020/03/04 08:59 by dbaluta