高通SDX12:ASoC 音频框架浅析

一、简介

ASoC–ALSA System on Chip ,是建立在标准ALSA驱动层上,为了更好地支持嵌入式处理器和移动设备中的音频Codec的一套软件体系。
本文基于高通SDX12平台,对ASoC框架做一个分析。

二、整体框架

1. 硬件层面

嵌入式Linux设备的Audio subsystem可以划分为Machine(板载硬件)、Codec、Platform(SoC)三个部分,三者的的关系大致如下图所示:
高通SDX12:ASoC 音频框架浅析_第1张图片

2. 软件层面

对应于ASoC的硬件框架,其软件也分为三个部分,具体内容如下:

2.1 Codec驱动

遵循ASoC设计原则,Codec需要和Platform无关(解耦),它本身包含了一些音频控件(controls)、音频接口、DAPM(动态音频电源管理)以及Codec本身的IO功能

2.2 Platform驱动

在ASoC中,platform部分的驱动代码一般位于sound/soc/soc-core.c文件中,这个文件是ASoC框架的核心实现,包括platform驱动的注册、初始化和管理等功能。

2.3

你可能感兴趣的:(Linux驱动/应用开发,音视频,高通,linux)