Swi*_*Run 4 linux audio alsa linux-kernel
在浏览 Linux ASoC 文件时,哪些文件属于以下类别:
来自内核文档:https : //www.kernel.org/doc/Documentation/sound/alsa/soc/overview.txt
为了实现这一切,ASoC 基本上将嵌入式音频系统分为 3 个组件:-
编解码器驱动程序:编解码器驱动程序与平台无关,包含音频控制、音频接口功能、编解码器 DAPM 定义和编解码器 IO 功能。
平台驱动程序:平台驱动程序包含该平台的音频 DMA 引擎和音频接口驱动程序(例如 I2S、AC97、PCM)。
机器驱动程序:机器驱动程序处理任何特定于机器的控制和音频事件(例如在播放开始时打开放大器)。
另外,这些作品的起点在哪里?(当我找到它们所在的文件时,可能不言自明)
编解码器驱动程序位于 sound/soc/codecs/ 中。
平台驱动程序通常位于 sound/soc/ platform / 中。
机器驱动程序可以在一些特定于 arch 的目录中;那些用于开发板的通常在同一目录中;例如,这是sound/soc/atmel/Makefile:
# AT91 平台支持 snd-soc-atmel-pcm-objs := atmel-pcm.o snd-soc-atmel-pcm-pdc-objs := atmel-pcm-pdc.o snd-soc-atmel-pcm-dma-objs := atmel-pcm-dma.o snd-soc-atmel_ssc_dai-objs := atmel_ssc_dai.o obj-$(CONFIG_SND_ATMEL_SOC) += snd-soc-atmel-pcm.o obj-$(CONFIG_SND_ATMEL_SOC_PDC) += snd-soc-atmel-pcm-pdc.o obj-$(CONFIG_SND_ATMEL_SOC_DMA) += snd-soc-atmel-pcm-dma.o obj-$(CONFIG_SND_ATMEL_SOC_SSC) += snd-soc-atmel_ssc_dai.o # AT91 机器支持 snd-soc-sam9g20-wm8731-objs := sam9g20_wm8731.o snd-atmel-soc-wm8904-objs := atmel_wm8904.o snd-soc-sam9x5-wm8731-objs := sam9x5_wm8731.o obj-$(CONFIG_SND_AT91_SOC_SAM9G20_WM8731) += snd-soc-sam9g20-wm8731.o obj-$(CONFIG_SND_ATMEL_SOC_WM8904) += snd-atmel-soc-wm8904.o obj-$(CONFIG_SND_AT91_SOC_SAM9X5_WM8731) += snd-soc-sam9x5-wm8731.o obj-$(CONFIG_SND_AT91_SOC_AFEB9260) += snd-soc-afeb9260.o
机器驱动程序文件通常实现平台驱动程序。