备文件的数据并回送应用程序请求的数据。这需要在用户空间、内核空间、总线及外设之间传输数据。 2.2 驱动程序构架 Linux驱动程序中将音频设备按功能分成不同类型,每种类型对应不同的驱动程序。UDAl341TS音频芯片提供如下功能: • 数字化音频。这个功能有时被称为DSP或Codec设备。其功能是实现播放数字化声音文件或录制声音。 • 混频器。用来控制各种输入输出的音量大小,在本系统中对应L3接口。 在Linux设备驱动程序将设备看成文件,在驱动程序中将结构file_operations中的各个函数指针与驱动程序对应例程函数绑定,以实现虚拟文件系统VFS对逻辑文件的操作。数字音频设备(audio)、混频器(mixer)对应的设备文件分别是/dev/dsp和/dev/mixer。 2.3 设备的初始化和卸载 /dev/dsp的驱动设计主要包含:设备的初始化和卸载、内存与DMA缓存区的管理、设备无关操作(例程)的实现以及中断处理程序。 在设备初始化中对音频设备的相关寄存器初始化,并在设备注册中使用了两个设备注册函数register sound_dsp()和regiter_sound_mi页码:[1] [2] [3] [4] [5] [6] [7] [8] 第4页、共8页 |