android下调试声卡驱动之概述
在Android中音频系统使用的是ALSA系统架构。ASoC--ALSA System on Chip 。是建立在标准ALSA驱动层上,为了更好地支持 嵌入式处理器和移动设备中的音频Codec的一套软件体系。在音频设备驱动中ASoC被分为Machine、Platform和Codec三大部分。 Codec部分:负责音频解码,这部分代码全然无平台无关(设备原厂提供),它包括了一些音频的控件(Controls),音频接 口,DAMP(动态音频电源管理)的定义和Codec IO功能。为了保证硬件无关性,不论什么特定于平台的代码都 要移 到Platform和Machine驱动中。 Platform部分:包括了平台的音频DMA和音频接口的配置和控制(I2S,PCM。AC97等); 与处理器芯片相关 的代码。 Machine部分:是耦合Platform和Codec驱动,同一时候与上层交互的代码。因为上层是标准的alsa架构。所下面层接口肯定要做了 统一,这部分由Machine本身的Platform驱动和Platform设备组成(请跟上面的Platform驱动差别开)。Platform驱动 内核已经完毕了,所以无须过多的关心怎么跟上层ALSA怎么衍接的问题。我们仅仅须要注冊一个Machine的Platform 设备以及完毕Platform和Codec耦合。 1、ALSA设备文件结构