ALSA代码梳理2

 

platform会调用devm_snd_soc_register_component()进行组件注册,用于platform端的DAI配置。可参考rockchip_i2s.c

codec也会调用devm_snd_soc_register_component()进行组件注册,用于codec端的控制。可参考rt5651.c

machine会调用devm_snd_soc_register_card()进行卡片注册,用于将platform和codec联系起来。可参考rockchip_rt5645.c

另外,platform会通过rockchip_pcm_platform_register()调用devm_snd_dmaengine_pcm_register()进行PCM注册,同时传递DMA配置信息。可参考rockchip_pcm.c和soc-generic-dmaengine-pcm.c

为启动数据传输,会调用soc_pcm_trigger()并进一步调用snd_dmaengine_pcm_trigger()去使能dma,dma中断会执行callback函数dmaengine_pcm_dma_complete()。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值