ASoC Machine驱动代码框架图
【前言】
较久之前写了一篇《Linux ASoC音频驱动架构 及 Machine驱动代码分析》,那个时候刚开始接触 ALSA,文章写得很粗糙。这段时间以来新看了 HAL层、Framework层的资料,温习了 Plarform_device 驱动、I2C_device 驱动、kobject + ktype + kset 以及更深入地阅读了工程中 Audio 部分的驱动代码,整理出了一个 ASoC Machine 驱动代码的框架图,算是对文首所提及文章的补充。
类似的 ASoC Codec驱动代码框架图在《ASoC Codec 驱动代码框架图》中,ASoC Platform驱动代码框架图在《ASoC Platform 驱动代码框架图》中。
【图示说明】
浅绿色:模块入口
棕色:声卡结构体实例
红色:注册 设备结构体/驱动结构体 到 Linux设备驱动模型内核
粉色:platform设备驱动模型中 ASoC架构 所嵌入的位置
墨蓝色:声卡对应platform_driver实例
蓝色:简要说明
【ASoC Machine驱动代码框架图】
图片很大,想看清楚细节需要 放大网页(Ctrl+鼠标滚轮)或 在新的页面打开图片 或 下载图片到本地。这张图对于工程中的 ASoC Machine 部分的说明应该十分详尽了。关于 Framework、HAL 的代码框架图,等我整理完了慢慢也都发上来作为备份。