歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Linux聲卡驅動移植和測試

Linux聲卡驅動移植和測試

日期:2017/3/1 9:43:06   编辑:Linux編程

Linux聲卡驅動移植和測試

一、分析驅動程序,根據開發板修改代碼

代碼太長,就不貼了,幾個注意點:

1、 查看開發板原理圖和S3C2410的datasheet,UDA1341的L3MODE、L3DATA、L3CLOCK分別與S3C2410的GPB2、GPB3、GPB4相連,IISLRCK=GPE0, IISSCLK=GPE1, CDCLK=GPE2,IISSDI=GPE3, IISSDO=GPE4,部分代碼如下:

2、 兩個重要結構體:audio_buf_t和audio_stream_t,其中audio_stream_t 為音頻流數據組成了一個環形緩沖區;

3、 file_operations結構體,open()、write()、read()、ioctl()、release()等函數的底層實現;

4、 DMA的原理;

5、 驅動加載和卸載等;

Linux驅動的開發與移值——分析Tiny210的聲卡驅動模塊 http://www.linuxidc.com/Linux/2014-02/96929.htm

嵌入式Linux下復位聲卡驅動 http://www.linuxidc.com/Linux/2011-08/40342.htm

S3C2440 UDA1341聲卡驅動分析(oos) http://www.linuxidc.com/Linux/2011-08/41680.htm

嵌入式Linux下復位聲卡驅動 http://www.linuxidc.com/Linux/2011-08/40342.htm

二、向內核中添加聲卡驅動

1、 配置內核中的聲卡選項;

注意:UDA1341的驅動程序s3c2410-oss.c在linux/sound/oss/目錄下(內核版本:Linux-2.6.8.1)。

在內核樹目錄下輸入make menuconfig,會跳出內核配置界面:

然後按鍵盤的向下導航鍵,下拉至Sound選項:

按回車,進入Sound選項界面:

選中“Open Sound System”選項,回車進入OSS選項界面:

分別選中“Open Sound System(DEPRECATED)”和“S3C2410 audio support”兩項,按空格,直到選項前面<>內變成*,然後按Tab鍵退出,保存配置信息:

ps*表示將驅動程序編譯進內核,空表示不編譯驅動程序,M表示將驅動程序編譯成模塊。

2、 編譯內核,生成內核鏡像zImage;

在內核樹目錄下,輸入命令make zImage,編譯成功後會在linux/arch/arm/boot/目錄下生成zImage文件。

3、 打開Samba服務器,將內核鏡像zImage共享到windows平台下,再通過DNW軟件將zImage下載到開發板上;

經過以上步驟,就成功地將聲卡驅動程序添加進內核。

更多詳情見請繼續閱讀下一頁的精彩內容: http://www.linuxidc.com/Linux/2014-06/103122p2.htm

Copyright © Linux教程網 All Rights Reserved