【任务5】在linux kernel中支持MMC的读写
本文是原「蜗窝讨论区」的历史存档(2017-05-21),来自版块「X Project」,共 1 帖。讨论区已停止服务,此处仅供查阅。
- 任务说明 通过“【任务4】启动Linux kernel到命令行”,我们已经可以通过USB boot的方式,将linux kernel启动到命令行。在这个基础上,可以进行后续的开发和实验了。本任务作为“X project”的第5个任务,比较简单明了:通过编写MMC/SD驱动,在kernel中支持MMC的读写。
不过呢,看似简单,背后确涉及很多的基础framework,例如gpio、pinmux、clock、power domain、reset、dma engine、等等。于是,本任务的目的浮现出来了:基于本站博文中各个framework的分析文章,借助mmc/sd driver的开发过程,学习并掌握嵌入式linux中那些基础驱动的开发方法。
目标一经明确,任务的步骤也可以确定了,大致如下:
基于本站“(/sort/gpio_subsystem)”的分析文章,移植并开发GPIO驱动和pinmux驱动[/*]
基于本站“(/tag/clock)”的分析文章,移植并开发clock驱动[/*]
基于本站“(/pm_subsystem/pm_domain_overview.html)”有关的分析文章,移植并开发power domain驱动[/*]
在本站的linux kernel的分析文章中,补充linux kernel reset framework有关的分析,然后移植并开发reset驱动[/*]
基于本站“(/tag/dma)”的分析文章,移植并开发dma controller驱动[/*]
基于本站“(/tag/mmc)”有关的分析文章,移植并开发mmc/sd controller驱动,以及相应的块设备驱动[/*]
最后,作为任务完结的验收,介绍在linux命令行进行mmc读写测试的方法[/*]
其它未尽事项,后面需要的话再补充[/*]
涉及的知识点 该任务主要涉及linux kernel基础驱动的移植和开发,通过这个任务,大家应该可以掌握linux驱动开发的基本方法。
完成任务的思路 思路的话,没什么大道理,直接上去怼就行了。另外,还是老话,感兴趣的同学可以认领任务
任务总结 TODO
