yiyun1009 发表于 2021-6-27 13:06:43

Okmx6ul 自制底板音频驱动DMA不能中断响应

底板音频模块原理和开发板一样,同样的核心板在开发板播放音频正常,在我的底板就不行,调试发现DMA pending后没产生DMA中断,数据都到不了8960。
想问下底板的什么变动有可能导致音频驱动出现这种问题

whl 发表于 2021-6-28 10:32:00

你说的播放不正常,是什么现象啊,有没有什么打印信息

yiyun1009 发表于 2021-6-28 12:13:19

没有任何错误信息,现在就是sai总线没有产生dma请求导致dma缓冲一下就满了,然后应用程序就一直在wait

yiyun1009 发表于 2021-6-28 12:17:36

数据手册上说dma请求和bus clk 有关,sai的mclk好像是bus clk生成的,示波器看mclk引脚一直是高电平,这会导致sai不产生dma请求吗

whl 发表于 2021-6-28 15:06:10

yiyun1009 发表于 2021-6-28 12:17
数据手册上说dma请求和bus clk 有关,sai的mclk好像是bus clk生成的,示波器看mclk引脚一直是高电平,这会 ...

估计wm8960没有正常工作,正常情况下播放音频文件的时候mclk会有输出的,可以看一下wm8960的驱动有没有注册成功,还有i2c接的对不对,是通过i2c2来配置wm8960的

yiyun1009 发表于 2021-6-28 15:30:46

8960设置为slave模式,所有配置都正常,i2c通信没问题

yiyun1009 发表于 2021-6-28 15:33:37

整个流程中sai配置,i2c配置没有任何异常,但是sai就是没有dma请求,把sai中断打开也不产生中断,好郁闷

yiyun1009 发表于 2021-6-28 15:37:34

数据手册说只要sai fifo还有空位就一定会产生dma请求的啊,这应该和外设没关系的

whl 发表于 2021-6-28 16:01:57

yiyun1009 发表于 2021-6-28 15:37
数据手册说只要sai fifo还有空位就一定会产生dma请求的啊,这应该和外设没关系的

8960默认都是配置成主模式的,驱动目前不支持做从模式

yiyun1009 发表于 2021-6-28 16:30:13

soc 是主,8960是从
页: [1] 2
查看完整版本: Okmx6ul 自制底板音频驱动DMA不能中断响应