微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > AM335x(TQ335x)学习笔记——WM8960声卡驱动移植

AM335x(TQ335x)学习笔记——WM8960声卡驱动移植

时间:11-28 来源:互联网 点击:

(1) codec_dai_name = "wm8960-hifi" -->

(2) ops -->

(3) init -->

(4) dai_fmt -->

  1. 65]mmcblk0:p1p2
  2. [2.131506]davinci_evmsound:wm8960-hifi<->4803c000.mcaspmappingok
  3. [2.215823]davinci_mdio4a101000.mdio:davincimdiorevision1.6
  4. [2.222212]davinci_mdio4a101000.mdio:detectedphymaskffffffde
  5. [2.232273]libphy:4a101000.mdio:probed
  6. [2.236597]davinci_mdio4a101000.mdio:phy[0]:device4a101000.mdio:00,driverunknown
  7. [2.244957]davinci_mdio4a101000.mdio:phy[5]:device4a101000.mdio:05,driverunknown
  8. [2.254567]cpsw4a100000.ethernet:DetectedMACID=c4:ed:ba:88:b5:e4
  9. [2.266507]input:gpio_keyad@0as/devices/gpio_keyad@0/input/input0
  10. [2.276227]omap_rtc44e3e000.rtc:settingsystemclockto2000-01-0100:00:00UTC(946684800)
  11. [2.285247]sr_init:NoPMIChooktoinitsmartreflex
  12. [2.290884]sr_init:platformdriverregisterfailedforSR
  13. [2.313832]lis3_reg:disabling
  14. [2.317496]ALSAdevicelist:
  15. [2.320598]#0:AM335x-EVM
  16. [2.434398]kjournaldstarting.Commitinterval5seconds
  17. [2.444085]EXT3-fs(mmcblk0p2):usinginternaljournal
  18. [2.452049]EXT3-fs(mmcblk0p2):recoverycomplete
  19. [2.457123]EXT3-fs(mmcblk0p2):mountedfilesystemwithordereddatamode
  20. [2.464445]VFS:Mountedroot(ext3filesystem)ondevice179:2.
  21. [2.474111]devtmpfs:mounted
  22. [2.478057]Freeingunusedkernelmemory:408K(c0859000-c08bf000)
  23. ----------mountall..........
  24. ----------Startingmdev......
  25. PleasepressEntertoactivatethisconsole.
  26. @tq335x#

从Log信息中很容易看到ALSA device list已经出现了AM335x-EVM项。到这里TQ335x已经能够识别到声卡了。

6. 测试

测试ALSA声卡驱动的常用方法是移植alsa-lib和alsa-utils,使用alsa-utils提供的arecord来测试声卡的录音,aplay来测试播放。alsa-lib和alsa-utils的移植教程有很多,这里我就不多讲了(如果有不明白这块的可以留言)。

录音测试:

  1. arecord-fcdtest.wav

播放测试:

  1. aplaytest.wav

播放时就可以听到之前录制的声音的。

7. 总结

调试声卡驱动大约进行了三周,也算是略有心得。

(1) 必要的工具:我调试的时候手头上工具不够齐全。我是在家里调试的,没有示波器,也就无法测量BCLK和LRCLK时钟,调试了很久都不知道WM8960到底有没有工作,因此,必要的工具可以有效的提高调试效率。

(2) 先调试放音,wm8960放音再调试录音。放音可以很容易检测效果,录音则没有方便的检测手段。同时,放音的配置比录音要简单些,可以有效检测驱动部分是否存在问题。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top