Introduction to SoundWire - Vinod Koul, Linaro

SoundWire is a new MIPI Audio Interface specification. It specifies a low complexity, low power, low latency, two-pin (clock and data), multi-drop bus that allows for the transfer of multiple audio streams along with embedded control/command information.

This protocol is intended to eventually replace HDA and I2S in PCs and embedded systems.

We explore the details of the recently added SoundWire Linux subsystem (merged into Linux 4.16) to help people get introduced to SoundWire and speed up the adoption of this new bus. We explain the SoundWire bus, interfaces and changes required by the existing device drivers in order to add SoundWire support. We also explore the enumeration methods used for different architectures.

About Vinod Koul

Vinod works for Linaro and is focussed in upstreaming for Qualcomm platforms. In past Vinod has worked on Audio for Intel.

Vinod is the maintainer of Linux dmaengine subsystem, SoundWire subsystem. He also wrote and maintains the ALSA compressed audio framework and user library.